[qt/clang/llvm-project]: Summary of bulk changes made
KDE Git Services - Bulk Change <[email protected]>
| Newsgroups | gmane.comp.kde.cvs |
|---|---|
| Message-ID | <[email protected]> |
Git repository change summary for qt/clang/llvm-project
Pushed by mirror-service into branch 'upstream/users/boomanaiden154/branchfolding-fold-away-subsequent-identical-branches'.
Changed from e6336b11d2f3115b8b106da0c5c110f050fdd81e to 4eb0aa7b014508db65d41861ec324f4724c3f376
Acknowledgement was received that this change introduces only existing code that has been pushed to another public open source repository.
This change contains the following new commits:
Git commit c6e184686cd7d0acfb88531738764f6134700382 by GitHub (on behalf of eleviant) on 21/07/2026 at 17:18..
[AArch64][CodeGen] Fix trampoline basic block offset (#202716)
Trampoline basic blocks are initially created with an offset of zero. As
a result, `isBlockInRange()` may operate on incorrect block offset,
potentially causing unnecessary conditional branch inversions or the
insertion of redundant trampolines.
https://invent.kde.org/qt/clang/llvm-project/-/commit/c6e184686cd7d0acfb88531738764f6134700382
Git commit abe757bd5dfd91718858402375d99152592ab73a by GitHub (on behalf of Sayan Sivakumaran) on 21/07/2026 at 17:20..
[SimplifyCFG] Simplify switch default branch when branch proves operand value (#206597)
If the default branch of a switch proves that there is only one value
that can be sent to the default branch, we can transform the default
branch into an explicit case of the switch. This can assist in further
simplification of the CFG during the simplification loop.
For example, we should be able to create an explicit case for the
default block in cases like the following:
```llvm-ir
switch_bb:
switch i8 %x, label %default_bb [...]
default_bb:
%cmp = icmp eq i8 %x, 1
call void llvm.assume(i1 %cmp) ; Implies %x must be 1
```
Related to #50665.
https://invent.kde.org/qt/clang/llvm-project/-/commit/abe757bd5dfd91718858402375d99152592ab73a
Git commit 03fc6d19191b64dfff4036a3829737b81ee34748 by GitHub (on behalf of John Otken) on 21/07/2026 at 17:27..
[llvm][docs] Update TestingGuide with LLVM PR merge advice (#207754)
Add guidance on waiting for LLVM PR merges before test-suite merges to
prevent failures.
Co-authored-by: John Otken [email protected]
https://invent.kde.org/qt/clang/llvm-project/-/commit/03fc6d19191b64dfff4036a3829737b81ee34748
Git commit ee1eab2a1d28651d0dc675f4f101c0bd78f31e44 by GitHub (on behalf of Alex Sepkowski) on 21/07/2026 at 17:33..
[clang] Update diagnostics to include matrices as accepted types (#201237)
Several `err_builtin_invalid_arg_type` call sites still emit "scalar or
vector of ..." even though the underlying checkers already unwrap matrix
types. This extends the diagnostic with a new "scalar, vector, or matrix
of" option (index 6) and migrates the call sites whose checkers do
accept matrices:
Call sites whose checkers only unwrap VectorType are left at index 5 so
their diagnostic text continues to accurately describe what is accepted.
Tests using the old wording are updated to match.
Fixes #189147
Assisted by copilot
---------
Co-authored-by: Copilot <[email protected]>
https://invent.kde.org/qt/clang/llvm-project/-/commit/ee1eab2a1d28651d0dc675f4f101c0bd78f31e44
Git commit accd1ed5226b4a8009c33f0a6d1bcfe58902f69e by GitHub (on behalf of John Paul Jepko) on 21/07/2026 at 17:34..
[analyzer] Fix StdVariantChecker crash on std::get with a non-ptr arg (#210167)
When `std::get` is called on a dereferenced integer-to-pointer cast, the
checker `alpha.core.StdVariant` crashes. Minimal reproducer:
```
std::get<int>(*(std::variant<int, char> *)11);
```
Godbolt reproducer - https://godbolt.org/z/4EKe1PrKb
The root cause is that `StdVariantChecker::handleStdGetCall()` calls
`SVal::getType()` on any non-unknown argument, then calls
`getPointeeType()` on the result while assuming it is a pointer type. In
the case of a concrete integer cast to a pointer and then dereferenced,
it is modeled as `loc::ConcreteInt`, whose recovered type is an integer.
`getPointeeType()` on such an input returns a null QualType, on which
`getTypePtr()` crashes.
Fix the crash by using the argument's static type rather than recovering
its SVal, eliminating the need to guard and call `getPointeeType()`.
https://invent.kde.org/qt/clang/llvm-project/-/commit/accd1ed5226b4a8009c33f0a6d1bcfe58902f69e
Git commit 4f5675a0500f9ccc60dcbabb57e1c4dc88c40a84 by GitHub (on behalf of Slava Zakharin) on 21/07/2026 at 17:37..
[CMake] Added missing LLVM_PTHREAD_LIB dependency. (#211041)
Required after #209423.
https://invent.kde.org/qt/clang/llvm-project/-/commit/4f5675a0500f9ccc60dcbabb57e1c4dc88c40a84
Git commit a896e12c5e7031a45eca3ca9392a3c56c304f157 by GitHub (on behalf of Michael Halkenhäuser) on 21/07/2026 at 17:45..
[CodeGen] Rematerializer: Handle subranges for full-mask users (#211031)
- Create live-interval subranges for new users reading a full lane mask.
- Fixes a missing-subranges case that tripped the `SubRegIdx != 0 &&
LI.hasSubRanges()` assertion in VirtRegRewriter for subreg-tracked
registers.
- Add corresponding unit and lit regression tests.
https://invent.kde.org/qt/clang/llvm-project/-/commit/a896e12c5e7031a45eca3ca9392a3c56c304f157
Git commit 1510167f2cf3a9e89cdb69eee5b3984abd9c930a by GitHub (on behalf of Joel E. Denny) on 21/07/2026 at 17:54..
[FileCheck][NFC] Introduce FileCheckDiagAnnotator (#207485)
This PR is stacked on PR #207484.
In the way that `SearchRangeAnnotator` encapsulates generating search
range annotations, this patch introduces `FileCheckDiagAnnotator` to
encapsulate generating the main annotation for a `FileCheckDiag`. This
change makes `buildInputAnnotations` easier to read, especially after a
third annotator class that will be introduced in a future patch.
https://invent.kde.org/qt/clang/llvm-project/-/commit/1510167f2cf3a9e89cdb69eee5b3984abd9c930a
Git commit 61b877a57de9fc37b8a94a71840ec66b4abfee2c by GitHub (on behalf of Matt Arsenault) on 21/07/2026 at 17:56..
cmake: Filter dangling symlinks from add_td_sources glob (#211051)
Editor lock files (e.g. Emacs' `.#foo.td`) are dangling symlinks that
`file(GLOB *.td)` picks up and passes to add_library(), which then fails
with "Cannot find source file". Filter them out with an EXISTS check, as
already done for header files in add_header_files_for_glob.
Co-authored-by: Claude (Claude Opus 4.8)
https://invent.kde.org/qt/clang/llvm-project/-/commit/61b877a57de9fc37b8a94a71840ec66b4abfee2c
Git commit f63615b2fdbf153ceaf5e2444e89fdb1aa59ab6c by GitHub (on behalf of Arseniy Obolenskiy) on 21/07/2026 at 18:02..
[AMDGPU] Fix wrong min/max for amdgcn.fmed3 NaN 3rd operand (#203822)
https://invent.kde.org/qt/clang/llvm-project/-/commit/f63615b2fdbf153ceaf5e2444e89fdb1aa59ab6c
Git commit 879db2f9478f454f8dcf961b660a9078b73bf1b5 by GitHub (on behalf of Arseniy Obolenskiy) on 21/07/2026 at 18:02..
[AMDGPU] Fix ISel crash on llvm.amdgcn.class with bf16 operand (#210971)
https://invent.kde.org/qt/clang/llvm-project/-/commit/879db2f9478f454f8dcf961b660a9078b73bf1b5
Git commit 35d69e3fe344e063174f54a9785a08249ba18cd9 by GitHub (on behalf of Alexis Engelke) on 21/07/2026 at 18:05..
[Analysis] Use CycleInfo for BranchProbabilityInfo (#210301)
Instead of computing a cycle info (SccInfo) internally in
BranchProbabilityInfo, use CycleInfo and remove the use of LoopInfo.
After recent improvements to CycleInfo, the extra analysis is cheaper
than computing the same information internally.
Replacing LoopInfo with CycleInfo has some impliciation that the
loop/cycle forest can differ if the header of an irreducible loop (which
is ignored by loop info) also happens to be the header of a different
natural loop. (Simple example: S -> A, B; A -> A, B; B -> A, B --
LoopInfo will find {{A}, {B}}; CycleInfo will find {A, {B}}].) In these
cases, the default weights will differ.
This change also makes the handling of entering/exiting edges
consistent between reducible and irreducible loops, therefore,
there are also minor changes for reducible CFGs.
https://invent.kde.org/qt/clang/llvm-project/-/commit/35d69e3fe344e063174f54a9785a08249ba18cd9
Git commit c2fac16a870fd77772b05ca11f7aa1f4e5a4d595 by GitHub (on behalf of Arthur Eubanks) on 21/07/2026 at 18:12..
Revert "[IR] Make semantics of strictfp consistent" (#211057)
Reverts llvm/llvm-project#209465
Causes verifier issues:
https://github.com/llvm/llvm-project/pull/209465#issuecomment-5025559698
https://invent.kde.org/qt/clang/llvm-project/-/commit/c2fac16a870fd77772b05ca11f7aa1f4e5a4d595
Git commit 48883c5aa6428ea91cf22417a519e6302e88a529 by GitHub (on behalf of Derek Schuff) on 21/07/2026 at 18:12..
[WebAssembly] Swap encoding bits for HAS_MEMORY_ORDER for relaxed atomics (#210854)
Following the decision in
https://github.com/WebAssembly/relaxed-atomics/issues/3
https://invent.kde.org/qt/clang/llvm-project/-/commit/48883c5aa6428ea91cf22417a519e6302e88a529
Git commit 15de5a2c4c14070d0c42ab0ca436ce4e192a9baf by GitHub (on behalf of Brad Smith) on 21/07/2026 at 18:17..
[Driver] Remove SUSE SLES special casing for hash-style (#210223)
https://invent.kde.org/qt/clang/llvm-project/-/commit/15de5a2c4c14070d0c42ab0ca436ce4e192a9baf
Git commit d81e22df458858e0ab1fdd56710d1d12251674b0 by GitHub (on behalf of Alexey Bataev) on 21/07/2026 at 18:18..
[SLP][NFC]Add extra tests for blended loads vectorization, NFC
Reviewers:
Pull Request: https://github.com/llvm/llvm-project/pull/211080
https://invent.kde.org/qt/clang/llvm-project/-/commit/d81e22df458858e0ab1fdd56710d1d12251674b0
Git commit 0aa8e45b04e548e34d7e6b1262cf7fec53678061 by GitHub (on behalf of adams381) on 21/07/2026 at 18:20..
[CIR] Lower _BitInt to its in-memory storage integer (#206606)
ClangIR keeps a `_BitInt(N)` at its literal width, but in memory it has
to live in a wider padded integer, the same way `bool` is `i1` as a
value and `i8` in memory. Because CIRGen emitted the constant at its
exact width, the storage padding was left undefined: a `signed
_BitInt(6) = -1` wrote `0x3f` where classic CodeGen and GCC write
`0xff`. @andykaylor pointed this out on
[#205605](https://github.com/llvm/llvm-project/pull/205605).
The fix widens `_BitInt` to its storage integer `iM` and
sign/zero-extends by signedness during lowering to the LLVM dialect, the
same place `bool` becomes `i8` (`convertTypeForMemory` and the
to/from-memory helpers). CIRGen keeps the literal `!cir.int<N, bitint>`
unchanged.
The byte-array storage form for wide "split" widths, where the storage
integer's alloc size exceeds its store size (e.g. `_BitInt(129)` to
`i192`, 32 vs 24 bytes), is not implemented. The global, alloca, load,
and store lowerings report an NYI error and the aggregate type
converters fail the conversion, rather than emit a wrong-sized integer.
Atomic read-modify-write on a padded `_BitInt` and vector-of-`_BitInt`
are also unimplemented.
The storage width comes from `IntType::getABIAlignment`, which assumes a
fixed 64-bit maximum alignment (x86-64). It is verified byte-for-byte on
x86-64; on targets with a larger maximum (e.g. AArch64) any width that
would be mis-sized instead hits the split-storage NYI. On a target whose
`_BitInt` maximum alignment is below 64 bits (e.g. a 32-bit target) the
storage can be mis-sized. Making the computation target-aware needs the
target's `getBitIntAlign`, which is not in the data layout, and is left
as a follow-up.
The approach follows the RFC [Widen bool / _BitInt / ext-vector-bool to
their in-memory types in
lowering](https://discourse.llvm.org/t/rfc-clangir-widen-bool-bitint-ext-vector-bool-to-their-in-memory-types-in-lowering/91160).
It supersedes
[#205605](https://github.com/llvm/llvm-project/pull/205605), which
emitted the constant at its literal width.
https://invent.kde.org/qt/clang/llvm-project/-/commit/0aa8e45b04e548e34d7e6b1262cf7fec53678061
Git commit 49d568a8d60d5912a5a7d8b2c3ac1caf58dab3e6 by GitHub (on behalf of Ben Dunbobbin) on 21/07/2026 at 18:27..
[DTLTO] Forward loop interchange to DTLTO remote compilations (#208591)
Recent upstream LLVM changes enabled `LoopInterchangePass` by default
through `PipelineTuningOptions`. TLTO observes that state directly from
the LTO config, but DTLTO was not forwarding the equivalent Clang option
to the remote compiler. As a result, TLTO could run loop interchange
pass while DTLTO did not, producing codegen differences for
configurations that exposed profitable/legally interchangeable loops.
Note that this was a pre-existing issue, the change in default has
simply exposed it.
Forward `C.PTO.LoopInterchange` as `-floop-interchange` when
constructing the common DTLTO remote compiler options. Extend the
testing to check that the SN-DBS remote command line includes the
forwarded option.
The code for forwarding such options is only intended as a temporary
measure. A more comprehensive solution is in discussion here:
https://discourse.llvm.org/t/synchronizing-lto-code-generation-configuration-between-clang-and-lld-dtlto
https://invent.kde.org/qt/clang/llvm-project/-/commit/49d568a8d60d5912a5a7d8b2c3ac1caf58dab3e6
Git commit b35c1aab487dd89537114612c5a1ed3dd0a3ce11 by GitHub (on behalf of Deric C.) on 21/07/2026 at 18:29..
Revert "[clang] Update diagnostics to include matrices as accepted types" (#211070)
Reverts llvm/llvm-project#201237. The PR did not update the test
assertions for `Sema/builtins-elementwise-math.c`
https://github.com/llvm/llvm-project/pull/201237#issuecomment-5037239584
https://invent.kde.org/qt/clang/llvm-project/-/commit/b35c1aab487dd89537114612c5a1ed3dd0a3ce11
Git commit 18220e793fbda204b66c08989cde11ad4583f26c by GitHub (on behalf of Demetrius Kanios) on 21/07/2026 at 18:30..
[SelectionDAG][GlobalISel] Move `to_tframeindex` & `renderFrameIndex` from targets into common code. (#210896)
Consolidates the multiple copies across the targets of the
`to_tframeindex` `SDNodeXForm` (frame index => target frame index) and
its GISel counterpart/equiv `renderFrameIndex`, moving them into
appropriate common areas.
As suggested/requested in
https://github.com/llvm/llvm-project/pull/206885#discussion_r3504014131
https://invent.kde.org/qt/clang/llvm-project/-/commit/18220e793fbda204b66c08989cde11ad4583f26c
Git commit 0ee0b9701bc1486d084014185f674321e714c079 by GitHub (on behalf of Valentin Clement (バレンタイン クレメン)) on 21/07/2026 at 18:37..
[mlir][openacc] Support already existing global in GPU module (#210806)
https://invent.kde.org/qt/clang/llvm-project/-/commit/0ee0b9701bc1486d084014185f674321e714c079
Git commit 3f928aec54e28dd470a3f0fbbe2ebafb73691dcc by GitHub (on behalf of Alexey Bataev) on 21/07/2026 at 18:49..
[SLP]Make the instruction-count check loop-aware
Raw getNum{Scalar,Vector}Insts() counted one-time, LICM-hoisted
broadcasts/buildvectors against the loop body, rejecting profitable loop
trees (508.namd_r). Weight each entry by its loop-nest trip
count and drop nest-invariant ones; flat code is unchanged (scale 1).
Fixes #207572
Reviewers: bababuck, RKSimon, hiraditya
Pull Request: https://github.com/llvm/llvm-project/pull/210074
https://invent.kde.org/qt/clang/llvm-project/-/commit/3f928aec54e28dd470a3f0fbbe2ebafb73691dcc
Git commit 1f1fcb9518cbe324d2af2aca51e32c93b324690f by GitHub (on behalf of Alexis Engelke) on 21/07/2026 at 18:55..
[Analysis][NFC] Remove LoopBlock in BranchProbabilityInfo (#211083)
After removing SccInfo, this data structure is largely pointless.
https://invent.kde.org/qt/clang/llvm-project/-/commit/1f1fcb9518cbe324d2af2aca51e32c93b324690f
Git commit 4bf0d282b9afd8f1a46a5bb0403c8363eca3deb4 by GitHub (on behalf of Erich Keane) on 21/07/2026 at 18:57..
[OpenACC/CIR] Remove std::transform_inclusive_scan use (#211076)
This seemingly is only added for GCC libstdcxx 11.1's C++17 support, but
our support matrix is 7.4. Replace it with a loop that implements the
same requirement.
https://invent.kde.org/qt/clang/llvm-project/-/commit/4bf0d282b9afd8f1a46a5bb0403c8363eca3deb4
Git commit 5009f54dd420f3c9df3f7e54022fc2234e2f0ebe by GitHub (on behalf of Caroline Newcombe) on 21/07/2026 at 19:09..
[flang][OpenMP] Reland implement collapse for imperfectly nested loops (#211000)
Reland of combined #208528 and #210753.
Fixes #199092 - Flang previously rejected intervening code between
associated loops in a collapsed nest (e.g. collapse(2) with statements
between the outer and inner DO). This patch removes that restriction and
implements correct lowering.
https://invent.kde.org/qt/clang/llvm-project/-/commit/5009f54dd420f3c9df3f7e54022fc2234e2f0ebe
Git commit 12e1c7f70f34d59c023d05d0fe2c228a4e9aac11 by GitHub (on behalf of Daniil Kovalev) on 21/07/2026 at 19:12..
[PAC][libc++] Fix build with `ptrauth_calls` feature (#211033)
After partial revert of #208330 in #209928, the libcxx build started
failing because of missing `<cstdint>` include required for `uintptr_t`
declaration used only by code behind `ptrauth_calls` feature check. See
https://lab.llvm.org/buildbot/#/builders/227/builds/3358
This patch adds the missing include.
https://invent.kde.org/qt/clang/llvm-project/-/commit/12e1c7f70f34d59c023d05d0fe2c228a4e9aac11
Git commit c7e1531885e787e909ee06e1b625ae04197350bf by GitHub (on behalf of Farzon Lotfi) on 21/07/2026 at 19:20..
[HLSL][SPIRV] Support Flat and Location decorators in the frontend (#210116)
fixes #194293
fixes #194432
In HLSL we need both Location and and Flat must be emitted as a single
`spirv.Decorations` node.
Also we need to apply Flat decoration to pixe/fragment shades with
inputs of integer or double because only 32 bit floats can be
interpolated.
Assisted with Claude Opus 4.8 via Copilot
https://invent.kde.org/qt/clang/llvm-project/-/commit/c7e1531885e787e909ee06e1b625ae04197350bf
Git commit bf42992272b66002ffe2a814c916a6b74e477ada by GitHub (on behalf of Alexey Bataev) on 21/07/2026 at 19:24..
Revert "[SLP]Make the instruction-count check loop-aware"
This reverts commit 3f928aec54e28dd470a3f0fbbe2ebafb73691dcc to fix
buildbots https://lab.llvm.org/buildbot/#/builders/11/builds/44691
Reviewers:
Pull Request: https://github.com/llvm/llvm-project/pull/211091
https://invent.kde.org/qt/clang/llvm-project/-/commit/bf42992272b66002ffe2a814c916a6b74e477ada
Git commit 16e009f63499bb3c8e62388521593dc11f17c8f9 by GitHub (on behalf of Florian Hahn) on 21/07/2026 at 19:45..
[ConstraintElim] Derive signed facts for post-increment inductions. (#210079)
Extend logic added in https://github.com/llvm/llvm-project/pull/209199
to also derive signed facts.
To do so, we keep track of whether LowerBound = Start + Step overflows
signed/unsigned. Code that previously bailed out if we were handling a
post-increment induction has been updated to use the computed
LowerBound, if it does not signed-wrap.
Alive2 Proof: https://alive2.llvm.org/ce/z/frskVt
PR: https://github.com/llvm/llvm-project/pull/210079
https://invent.kde.org/qt/clang/llvm-project/-/commit/16e009f63499bb3c8e62388521593dc11f17c8f9
Git commit e328d6e08979f163da46f2a12bf74d632b95f168 by GitHub (on behalf of Louis Dionne) on 21/07/2026 at 19:46..
[libc++] Use github-script instead of pygithub for benchmark jobs, and report failure (#211074)
Switch GitHub API interactions to use actions/github-script instead of
pygithub, as is done in other Github workflows in the repository. This
is simpler and it also resolves the issue that if setting up the Python
virtual environment fails, there's no way to communicate the issue back
since doing so would require pygithub.
As a drive-by, also report the failure when a step in the libc++ PR
benchmark job fails, instead of leaving a "Running benchmarks in ..."
comment indefinitely.
Assisted by Claude
Fixes #210985
https://invent.kde.org/qt/clang/llvm-project/-/commit/e328d6e08979f163da46f2a12bf74d632b95f168
Git commit 5b6ebc25e08c35d30edbe6aa7b64d06c46686b18 by GitHub (on behalf of nvptm) on 21/07/2026 at 19:47..
[flang][cuda][openacc] Support CUDA calls to ACC routines (#210165)
Enable CUDA device procedures to call !$acc routine procedures.
- Treat ACC routines as device-callable during CUDA semantic checking.
- Apply implicit-device dummy argument handling to ACC routines called
from CUDA device code.
- Defer CUDA cloning of ACC routines until ACC lowering materializes and
moves the specialized routine into the GPU module.
- Add a CUF device-function transform regression test.
https://invent.kde.org/qt/clang/llvm-project/-/commit/5b6ebc25e08c35d30edbe6aa7b64d06c46686b18
Git commit 5df4aa19aa1e6308509356db19b5e46884d47361 by GitHub (on behalf of nvptm) on 21/07/2026 at 19:59..
[flang][acc] Emit unified declare globals as extern. (#210757)
Emit external device symbols for OpenACC declare create and copyin
globals in -gpu=mem:unified; preserve device definitions for
device_resident globals.
https://invent.kde.org/qt/clang/llvm-project/-/commit/5df4aa19aa1e6308509356db19b5e46884d47361
Git commit 5697319382fb2ea2f5a15883304edc643ead8fcd by GitHub (on behalf of Alex MacLean) on 21/07/2026 at 20:09..
[NVPTX] Simplify BRX emission avoiding pseduo-instruction chain (#209952)
This is much more idiomatic and simpler as well and avoids a series of
instructions which would cause syntax errors if somehow something were
scheduled between them.
https://invent.kde.org/qt/clang/llvm-project/-/commit/5697319382fb2ea2f5a15883304edc643ead8fcd
Git commit e8b684a64aa5176a1da5ff18c712343af695e456 by GitHub (on behalf of Alexey Bataev) on 21/07/2026 at 20:18..
[SLP]Make the instruction-count check loop-aware
Raw getNum{Scalar,Vector}Insts() counted one-time, LICM-hoisted
broadcasts/buildvectors against the loop body, rejecting profitable loop
trees (508.namd_r). Weight each entry by its loop-nest trip
count and drop nest-invariant ones; flat code is unchanged (scale 1).
Fixes #207572
Original Pull Request: https://github.com/llvm/llvm-project/pull/210074
Recommit after revert in bf42992272b66002ffe2a814c916a6b74e477ada
Reviewers:
Pull Request: https://github.com/llvm/llvm-project/pull/211096
https://invent.kde.org/qt/clang/llvm-project/-/commit/e8b684a64aa5176a1da5ff18c712343af695e456
Git commit f1685cb3d97ca73e88e9435a5700bc9f6f47f2fb by GitHub (on behalf of Eli Friedman) on 21/07/2026 at 20:30..
workflows/issue-release-workflow: Allow multiple URLs in /cherry-pick commands. (#211050)
f0ae26c9 allowed specifying multiple commits to /cherry-pick, but that
only works for plain commit hashes; it doesn't work for the URL form.
Adjust the regex to allow multiple URLs.
https://invent.kde.org/qt/clang/llvm-project/-/commit/f1685cb3d97ca73e88e9435a5700bc9f6f47f2fb
Git commit 8dc94a5d51bff16c61dd6596a6f25dbf93bc545f by GitHub (on behalf of Andy Kaylor) on 21/07/2026 at 20:37..
[CIR] Fix avx512vlbw builtin test run lines (#211063)
The avx512vlbw-builtins.c test was using the now-nonexistant avx10.1-512
target feature in several of its run lines. Because the feature no
longer exists with that spelling it was being silently ignored.
Apparently it isn't needed for the test upstream because the test has
been passing, but I received reports from a downstream user that the
test was failing for them.
There was a recent change to more strictly enforce always-inlining if
target features didn't match. I suspect that this downstream project has
a different version of some intrinsic header files so that it requires
"avx10.1" (the correct spelling of the feature).
This change updates the test run lines to use the correct feature
spelling.
https://invent.kde.org/qt/clang/llvm-project/-/commit/8dc94a5d51bff16c61dd6596a6f25dbf93bc545f
Git commit ded4902fe10242e4581860f92056719fa4591b2c by GitHub (on behalf of Henry Jiang) on 21/07/2026 at 20:38..
Revert "[dsymutil] Add support for pseudo probes (#186877)" (#206789)
This reverts commit bc3386c1b9a5bff82ce4baaf4254fc4268f69ff4.
Let's back this out in favor of emitting pseudoprobe data in favor of
emitting in the `__LLVM` segment, and let `dsymutil` collect the debug
map objects and merge them into the final sections.
https://invent.kde.org/qt/clang/llvm-project/-/commit/ded4902fe10242e4581860f92056719fa4591b2c
Git commit 009e841dbde021aa59bd7357269aeabfcc4f6128 by GitHub (on behalf of Valentin Clement (バレンタイン クレメン)) on 21/07/2026 at 20:41..
[flang][cuda] Add option for allocator registration function to CUFAddConstructor (#211098)
This allows to register different allocators when needed.
https://invent.kde.org/qt/clang/llvm-project/-/commit/009e841dbde021aa59bd7357269aeabfcc4f6128
Git commit db816fe2ed4e0be51192d3030d90a176d5fec9d5 by GitHub (on behalf of Vladislav Dzhidzhoev) on 21/07/2026 at 20:41..
[DirectX][Driver] Add /Qpdb_in_private flag support (#204903)
In DXC, when `/Qpdb_in_private` flag is specified, debug info PDB is
emitted into PRIV part of the output DXContainer (as well as into
separate PDB file, if its name is specified with `/Fd`).
This patch reimplements similar behavior in llc and Clang.
MC is modified to be able to emit PRIV part.
Depends on https://github.com/llvm/llvm-project/pull/204166.
https://invent.kde.org/qt/clang/llvm-project/-/commit/db816fe2ed4e0be51192d3030d90a176d5fec9d5
Git commit 9a729e7fbbb6e1327e6af2148f0c941401b44cbf by GitHub (on behalf of forking-google-bazel-bot[bot]) on 21/07/2026 at 20:56..
[Bazel] Fixes db816fe (#211109)
This fixes db816fe2ed4e0be51192d3030d90a176d5fec9d5.
Buildkite error link:
https://buildkite.com/llvm-project/upstream-bazel/builds?commit=db816fe2ed4e0be51192d3030d90a176d5fec9d5
Co-authored-by: Google Bazel Bot <[email protected]>
https://invent.kde.org/qt/clang/llvm-project/-/commit/9a729e7fbbb6e1327e6af2148f0c941401b44cbf
Git commit 3421dc247e4d6e87c6ab9b5db44c11873c28814f by GitHub (on behalf of Jon Roelofs) on 21/07/2026 at 21:22..
[MC][AArch64] Add .cfi_set_ra_state for PAuth_LR (#209949)
The new CFI directive directly assigns an RA signing state to the RA_SIGN_STATE DWARF pseudo-register for use when unwinding, to indicate whether the value of PC has been used as a diversifier for return address signing. The new directive subsumes and replaces .cfi_negate_ra_state_with_pc, which was found to be unsuitable for descibing some block layouts [1], particularly in hot-cold-split functions.
1: https://github.com/ARM-software/abi-aa/pull/346
https://invent.kde.org/qt/clang/llvm-project/-/commit/3421dc247e4d6e87c6ab9b5db44c11873c28814f
Git commit 866832a59612e569c8d18bc8e846cc32e9a5730b by GitHub (on behalf of Farzon Lotfi) on 21/07/2026 at 21:24..
[SPIRV] Fix legalization of widened cbuffer vector loads (#209912)
fixes #191070
In the SPIR-V backend an optimization has widened a narrow cbuffer load
into a wider vector load that reads trailing padding (e.g. a <1 x float>
float1x4 column loaded as <4 x float>). loadVectorFromVector only
handled down-casts and asserts when the target has more elements than
the source.
We need to handle the widening case by loading the available lanes and
inserting them into a poison target vector, leaving the padding lanes as
poison.
Assisted by Claude Opus 4.8
https://invent.kde.org/qt/clang/llvm-project/-/commit/866832a59612e569c8d18bc8e846cc32e9a5730b
Git commit e55d3bca36ff8a23ef598f6f452ec1e3f399dc31 by GitHub (on behalf of Henry Jiang) on 21/07/2026 at 21:27..
[MC] Emit Mach-O pseudo-probe sections in the __LLVM segment (#206793)
Let's back this out in favor of emitting pseudoprobe data in favor of
emitting in the __LLVM segment, and let dsymutil collect the debug map
objects and merge them into the final sections.
This is to prevent older ld toolchains that don't ignore the new
`__PSEUDO_PROBE` segments from accidentally leaking the probe metadata
into the final image.
https://invent.kde.org/qt/clang/llvm-project/-/commit/e55d3bca36ff8a23ef598f6f452ec1e3f399dc31
Git commit c3373183d2fbb2184c249f93549c300104c994e0 by GitHub (on behalf of Alex Strelnikov) on 21/07/2026 at 21:35..
[libc] Migrate printf_core from stdio/ to __support/. (#208303)
The code will be updated and used for wide character printf functions
implemented in wchar/, so __support/ is a more consistent shared
location.
Assisted-by: Automated tooling, human reviewed.
https://invent.kde.org/qt/clang/llvm-project/-/commit/c3373183d2fbb2184c249f93549c300104c994e0
Git commit 96b100337b5b61e84ee07f6ae9168d3b502e574e by GitHub (on behalf of Prabhu Rajasekaran) on 21/07/2026 at 21:38..
Reland "[Fuchsia] Stack analysis flags for runtimes" (#211072)
Reverts llvm/llvm-project#192515
We have addressed the CFI related workflow by introducing a new
MD_callgraph and by disambiguating it from MD_type used for CFI.
https://invent.kde.org/qt/clang/llvm-project/-/commit/96b100337b5b61e84ee07f6ae9168d3b502e574e
Git commit 5503126b61dc0524da8cf4f20ba05f82685a960c by GitHub (on behalf of Andy Kaylor) on 21/07/2026 at 21:40..
[CIR] Flatten loop ops with a cleanup region (#210472)
This change adds support for CFG flattening of loop operations with
cleanup regions.
Rather than re-invent the entire branch through cleanup mechanism, I am
first rewriting the loop by sinking the condition into the body (as a
test + break-if-false) and hoisting the step into the body, and
surrounding the entire body with a cir.cleanup.scope op. Then the greedy
flattening algorithm runs the newly formed loop through the existing
flattening mechanisms so that the loop cleanup handling ends up being
done by the same code that flattens other cleanup scopes.
Assisted-by: Cursor / various models
https://invent.kde.org/qt/clang/llvm-project/-/commit/5503126b61dc0524da8cf4f20ba05f82685a960c
Git commit 8bbaac66535c6b925dab34fb05f00505feac11d7 by GitHub (on behalf of Matt Arsenault) on 21/07/2026 at 22:02..
TargetParser: Add Triple::getDefaultFloatABI (#210899)
In order to eliminate TargetOptions ABI fields the front and
middle end need to know what value the backend is going to choose
for the ABI properties. This is similar to how we have
getDefaultExceptionHandling and getDefaultWCharSize.
The clang driver seems to have a different notion of which targets
are default soft. This followed ARMTargetMachine as the authority.
Co-authored-by: Claude (Claude-Opus-4.8) <[email protected]>
https://invent.kde.org/qt/clang/llvm-project/-/commit/8bbaac66535c6b925dab34fb05f00505feac11d7
Git commit 8775feb5da4de07689b125702265321048ee13d7 by GitHub (on behalf of Daniil Kovalev) on 21/07/2026 at 22:06..
[clang] Drop stale `*-buildattr` module flag emission (#211021)
Module flags `sign-return-address-buildattr` and
`tag-stack-memory-buildattr` are never exercised elsewhere by existing
tests or code across the whole LLVM source tree, and there are no known
cases of them being used.
Moreover, the `sign-return-address-buildattr` flag emission was gated by
`ptrauth` target feature which does not actually exist: see
`AArch64TargetInfo::computeFeatureLookup()` and
`ARMTargetInfo::hasFeature(StringRef Feature)`. So, it was never
emitted.
This patch removes code responsible for these stale module flags
emission.
Note: the flags was previously introduced in
https://reviews.llvm.org/D112421
https://invent.kde.org/qt/clang/llvm-project/-/commit/8775feb5da4de07689b125702265321048ee13d7
Git commit db4d75e13ddc64cfb3a2f3620b622b8c4376812d by GitHub (on behalf of Alexey Gerenkov) on 21/07/2026 at 22:06..
[Xtensa] Add fp16 conversion support (#208206)
Close https://github.com/llvm/llvm-project/issues/207505
https://invent.kde.org/qt/clang/llvm-project/-/commit/db4d75e13ddc64cfb3a2f3620b622b8c4376812d
Git commit aace063fda01504608e4c818a3694f8108da36cf by GitHub (on behalf of Farzon Lotfi) on 21/07/2026 at 22:10..
[SPIR-V] Erase dead functions in shader modules (#209672)
The LLVM offload test suite is current failing layout keyword
orientation tests. While initially appearing to be a layout problem in
the SPIR-V legalizer caused by matrix vector sizes exceeding 4, the root
cause is actually persistent dead function definitions in the SPIR-V
backend.
This behavior is standard for OpenCL, which relies on a linker to clean
up unused definitions; however, since shaders lack a linker and require
full inlining, we must handle this in a special shader only pass.
This change adds SPIRVFinalizeShaderLinkage (a shader-only analogue of
DXILFinalizeLinkage): internalize non-entry, non-exported helpers and
erase the dead ones. Globals are left alone since unreferenced externals
become interface OpVariables.
Fixes #201712
Assisted with Claude Opus 4.8
https://invent.kde.org/qt/clang/llvm-project/-/commit/aace063fda01504608e4c818a3694f8108da36cf
Git commit 4eb0aa7b014508db65d41861ec324f4724c3f376 by Aiden Grossman on 21/07/2026 at 22:30..
rebase
Created using spr 1.3.7
https://invent.kde.org/qt/clang/llvm-project/-/commit/4eb0aa7b014508db65d41861ec324f4724c3f376