[qt/clang/llvm]: Summary of bulk changes made
KDE Git Services - Bulk Change <[email protected]> Tue, 4 Aug 2026 18:12:27 +0000 (UTC)
| Newsgroups | gmane.comp.kde.cvs |
|---|---|
| Message-ID | <[email protected]> |
Git repository change summary for qt/clang/llvm Pushed by mirror-service into branch 'upstream/users/tstellar/upload-self-contained'. Changed from eb7ff99507472154f3b8a9405434f9bac155ed77 to 0d1ffee6d43ec1e03eba67f279fc7bb852a4b608 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 256f40dbe6b66dae8d08ddbe7d1ff7851c79764c by GitHub (on behalf of Jared Wyles) on 04/08/2026 at 11:19.. Cpu features cross platform (#205447) Also adds the place holders for other OS's as well as the structure for cross platform code going forward. Prefer sys calls as we can't be sure what runtime we may end up linking with Some features can be controlled via the kernel so this makes it easier than relying on __cpuid for now. The triples are now more accurate and include the os version on darwin. All results are a string that are passed in the default map with the key are llvm subtarget features valid strings orc-rt.Executor.SubtargetFeatures Adds a new process regression test as well, with a best effort guess that the triple returned is correct. https://invent.kde.org/qt/clang/llvm/-/commit/256f40dbe6b66dae8d08ddbe7d1ff7851c79764c Git commit 53f5999f0382624abdbae90df143e83c71cdb8ab by GitHub (on behalf of Keshav Vinayak Jha) on 04/08/2026 at 11:20.. [InstCombine] Rebuild type-changing PHIs in PointerReplacer (#212429) PointerReplacer mutates PHI types when replacing an alloca with a pointer in another address space. Mutating a value type in place can invalidate existing users whose result types or operand constraints were formed from the original pointer type. For example: ``` %p = phi ptr addrspace(5) [ %a, %bb0 ], [ %b, %bb1 ] %g = getelementptr i8, ptr addrspace(5) %p, i64 1 ``` Changing `%p` to `ptr addrspace(4)` leaves the existing GEP result in `AS5` while its pointer operand is now in `AS4`. (This is what exposed the bug). This triggered: https://github.com/llvm/llvm-project/blob/0bcff14b1740cf32f9e0983726238dcf353c6ac8/llvm/lib/IR/Operator.cpp#L129-L131 Create a new PHI when the replacement changes type so existing users remain attached to the original well-typed graph while PointerReplacer builds their replacements. Preserve in-place operand updates when the PHI type is unchanged. Assisted-by: Codex --------- Signed-off-by: Keshav Vinayak Jha <[email protected]> https://invent.kde.org/qt/clang/llvm/-/commit/53f5999f0382624abdbae90df143e83c71cdb8ab Git commit 5156be95e21ca4ac6a0e26ddf1ea349e7199b7d9 by GitHub (on behalf of Harry Ramsey) on 04/08/2026 at 11:20.. [AArch64][ISel] Recover ADDHN from OR comparison masks (#210943) InstCombine converts the high-half addition of vector comparison masks into an OR. Recognise the resulting trunc(or(setcc, setcc)) DAG and reconstruct the canonical ADDHN pattern for the supported NEON types. https://invent.kde.org/qt/clang/llvm/-/commit/5156be95e21ca4ac6a0e26ddf1ea349e7199b7d9 Git commit ebd0cbfb372c42c499d021022975a60bbc6d0d27 by GitHub (on behalf of Dmitrii Makarenko) on 04/08/2026 at 11:29.. [mlir][tensor] Preserve encoding in more canonicalizers (pad, convertToStaticExpandShape) (#207241) Fixes encoding drop in `tensor.*` canonicalizers. Patterns that only refine a tensor's shape (never merge/combine data) now propagate the encoding: `ConvertToStaticExpandShape`, `PadOp::inferResultType` (and its callers `FoldSourceTensorCast`, `FoldStaticPadding`). An encoding implementing `VerifiableTensorEncoding` is re-verified against the refined shape and dropped if invalid (e.g. sparse); an opaque encoding (no interface) is propagated as-is. Patterns that merge/combine tensors (`ConcatOp::inferResultType`, `InferConcatOperandTypes`, `CollapseShapeOp::inferCollapsedType`) keep the existing drop-encoding behavior - there's no static way to verify an arbitrary encoding survives a merge or rank change when dynamic dims are involved. Documents this contract on `VerifiableTensorEncoding` in `TensorEncoding.td`. co-authored Claude Opus 4.7 Signed-off-by: Dmitrii Makarenko <[email protected]> https://invent.kde.org/qt/clang/llvm/-/commit/ebd0cbfb372c42c499d021022975a60bbc6d0d27 Git commit 22508ac951966c321977cc2d51ab353b9e0ab453 by GitHub (on behalf of Simon Pilgrim) on 04/08/2026 at 11:55.. [X86] pr61923.ll - update IR to match middleend (#213908) InstCombine converts vXi1 logic reductions to bitcasted scalar integer ops - we should be testing that, not llvm.vector.reduce.and.v32i1 calls https://invent.kde.org/qt/clang/llvm/-/commit/22508ac951966c321977cc2d51ab353b9e0ab453 Git commit 03435270d2662be52b360c929d19a2f666eb1af5 by GitHub (on behalf of Thibaut Goetghebuer-Planchon) on 04/08/2026 at 11:55.. [mlir][tosa] Fold reshape of dense resource constants (#213225) Add support for `DenseResourceElementsAttr` in TOSA reshape folding. https://invent.kde.org/qt/clang/llvm/-/commit/03435270d2662be52b360c929d19a2f666eb1af5 Git commit 4d349761f5bf7cc42ffbae5d7819bf87315dbafb by GitHub (on behalf of theRonShark) on 04/08/2026 at 12:05.. Reland "Revert "[OpenMP] target-fast implies teams/threads oversubscription"" (#213911) Reverts llvm/llvm-project#213769 https://invent.kde.org/qt/clang/llvm/-/commit/4d349761f5bf7cc42ffbae5d7819bf87315dbafb Git commit 61a8d42409f596def8befa1350f79609de08027c by GitHub (on behalf of Nikolas Klauser) on 04/08/2026 at 12:08.. [libc++] Optimize std::swap of locales (#209760) Currently we copy construct `locale`s whenever we swap, which is quite expensive for locales since that does atomic increments and decrements. We can just swap the pointers instead. https://invent.kde.org/qt/clang/llvm/-/commit/61a8d42409f596def8befa1350f79609de08027c Git commit 2deffca50638d88b6df28316db2e6d3f617413da by GitHub (on behalf of Ramkumar Ramachandra) on 04/08/2026 at 12:21.. [LangRef] Fix language around strictfp semantics (#213879) The LangRef wording changed in 15bb4a97a7 ([IR] Make semantics of strictfp consistent v2, #211769) is unfortunately incorrect. There are some open questions around its semantics, but a simple revert should do for the moment. Reported-by: Ömer Sinan Ağacan <[email protected]> https://invent.kde.org/qt/clang/llvm/-/commit/2deffca50638d88b6df28316db2e6d3f617413da Git commit 37f4eeee65940dcac53e816c4b324fb607328e0e by GitHub (on behalf of Tom Stellard) on 04/08/2026 at 12:38.. workflows/upload-release-artifact: Use new self-repository reference (#213366) This is for composite actions. https://github.blog/changelog/2026-07-30-reference-same-repository-actions-with-self-repository-syntax/ https://invent.kde.org/qt/clang/llvm/-/commit/37f4eeee65940dcac53e816c4b324fb607328e0e Git commit 00bdfbfffd2760a3382dddd36c2b61e0e04fafb5 by GitHub (on behalf of Dmitrii Makarenko) on 04/08/2026 at 12:50.. [mlir][tensor] Preserve source encoding when folding insert_slice canonicalizers (#207239) `InsertSliceOpConstantArgumentFolder` re-derives the refined source type via `ExtractSliceOp::inferCanonicalRankReducedResultType`, which copies the encoding of the passed-in "source template" - in this pattern, `insertSliceOp.getDestType()`. For a static, encoding-less destination this silently drops any encoding the actual source carried, which downstream dialects can use for mandatory metadata (upper bounds, layout, sparsity descriptors) lost during `--canonicalize`. Rebuild the refined source type carrying the original source's encoding. If the encoding implements `VerifiableTensorEncoding`, re-verify it against the refined shape and drop it if it no longer holds (e.g. a rank-dependent sparse encoding); otherwise treat it as opaque/shape-agnostic and propagate it unconditionally. Shape refinement (the `?` -> static direction) is unchanged and still satisfies `preservesStaticInformation`. lit created with Claude Opus 4.7 Signed-off-by: Dmitrii Makarenko <[email protected]> https://invent.kde.org/qt/clang/llvm/-/commit/00bdfbfffd2760a3382dddd36c2b61e0e04fafb5 Git commit ea14fa213e49b4879e77cf50d5a8bf56ae7546c5 by GitHub (on behalf of Louis Dionne) on 04/08/2026 at 12:52.. [libc++] Remove C++20 modules tests from the C++03 frozen test suite (#213730) These tests are never executed since they require C++20, and the C++03 frozen headers only run in C++03 mode. https://invent.kde.org/qt/clang/llvm/-/commit/ea14fa213e49b4879e77cf50d5a8bf56ae7546c5 Git commit df38ae1f5d3636eeb9938134c895509e32187a47 by GitHub (on behalf of Louis Dionne) on 04/08/2026 at 12:56.. [libc++] Fix the clang-tidy source filter to cover libcxx/src again (#213732) The filter regex used `libcxx(abi?)`, which matches `libcxxab` and `libcxxabi`, but never just `libcxx`. https://invent.kde.org/qt/clang/llvm/-/commit/df38ae1f5d3636eeb9938134c895509e32187a47 Git commit c2ae9308090e26cc6e3e4ab64c06326061c9572c by GitHub (on behalf of Louis Dionne) on 04/08/2026 at 12:57.. [libc++] Trim down associative container benchmark sizes (#212252) Based on local measurements, the associative containers are by far the slowest benchmarks to run. While there is value in benchmarking small and large sizes, we can significantly cut down benchmark times by stripping down to only 2 sizes (from 4). With this patch, the benchmarks go from 3124s to 1766s across the associative container benchmarks, which is -43% of their execution time, and corresponds to ~15% of the entire benchmark suite. Towards #173032 https://invent.kde.org/qt/clang/llvm/-/commit/c2ae9308090e26cc6e3e4ab64c06326061c9572c Git commit df538d6865a72b39a20f03407834594a8ddadc9a by GitHub (on behalf of Simon Pilgrim) on 04/08/2026 at 12:58.. [X86] vector-reduce-or-cmp.ll - update mask_v3i1 IR to match middleend (#213923) InstCombine converts vXi1 logic reductions to bitcasted scalar integer ops - we should be testing that, not llvm.vector.reduce.or.v3i1 calls Exposes some really poor scalarization on pre-AVX512 targets https://invent.kde.org/qt/clang/llvm/-/commit/df538d6865a72b39a20f03407834594a8ddadc9a Git commit b5645e2eee73dafaa2e577ef42445149cbbf5d82 by GitHub (on behalf of Jan Trusiłło) on 04/08/2026 at 13:10.. [offload] allow h2h olMemcpy with a queue (#212757) olMemcpy currently disallows host-to-host copies with a queue, even though that is a desirable use case (e.g. to copy a buffer as a dependency for another operation) This PR adds support for asynchronous host-to-host copies by adding `GenericDeviceTy::dataMemcpy` and the corresponding required `dataMemcpyImpl` plugin operation. Unlike `dataSubmit`, `dataRetrieve`, and `dataExchange`, this operation does not assign a device direction to either pointer: - CUDA: Uses `cuMemcpyAsync`, which by itself determines the pointer types and preserves stream ordering. Dynamic CUDA symbol declarations and `_v2` lookup support are included. - Level Zero: Uses the existing queue `memoryCopy` operation (backed by `zeCommandListAppendMemoryCopy`), which appends a memory-copy command to the command list. - AMDGPU: No "enqueue a host-to-host copy" operation exists directly in that API, so we enqueue a `std::memcpy` callback through `pushHostCallback`. - Host: Call `memcpy` directly. The `olMemcpy` API documentation now states that queued host-to-host copies are ordered with other work in the queue. The public function signature is unchanged. A new unit test executes an `h2d -> d2h -> h2h -> h2d -> d2h` operation chain, which should fail if the queue order isn't respected. Assisted-by: Codex https://invent.kde.org/qt/clang/llvm/-/commit/b5645e2eee73dafaa2e577ef42445149cbbf5d82 Git commit 04c9cf4743fc62ca555f270f3621b324e2472767 by GitHub (on behalf of Aurore Poirier) on 04/08/2026 at 13:26.. [LLDB] Serve unknown type symbols through `qSymbol` for non-MachO targets (#200134) I am working with a binary where some symbols are generated from linker scripts. They end up identified as `eSymbolInvalid` when loaded in LLDB. OpenOCD can try to fetch them. Some might even be hard-coded data, not going through an address in the binary (explaining the presence of the check and raw value return). Testing it showed that **GDB returns them despite them not being proper addresses**. These can also be generated by C++ static constexpr, such values could be accessed by a qSymbol query. 358cf1ea302eb introduced a divergence between GDB and LLDB where LLDB does not serve symbols of unknown type through GDB protocol command `qSymbol`. Per commit description, this is an expected behavior on MachO-based platforms, but it is not on ELF-based platforms, where LLDB should follow GDB. The changes introduced by said commit are now gated behind an architecture check. https://invent.kde.org/qt/clang/llvm/-/commit/04c9cf4743fc62ca555f270f3621b324e2472767 Git commit 07a53be7d3cd68b7b4c397eb3ec5b30bc84acbf9 by GitHub (on behalf of Madhur Kumar) on 04/08/2026 at 13:26.. [GlobalISel] Combine merge-unmerge with mixed scalar and vector types (#213086) fixes: https://github.com/llvm/llvm-project/issues/177416 https://invent.kde.org/qt/clang/llvm/-/commit/07a53be7d3cd68b7b4c397eb3ec5b30bc84acbf9 Git commit e3d847f07723f8f6ef62a540452344ae4d155007 by GitHub (on behalf of Alexey Bataev) on 04/08/2026 at 13:27.. [SLP]Fix scheduling of absorbed copyable fmuls, modeled as fmuladd(a, b, -0.0) A copyable fmul absorbed into fmuladd(a, b, -0.0) does not appear in the operand columns of its own node, so the operand scan never released the schedule data of the copyable instruction itself and scheduling ended with unscheduled bundles. Release it explicitly when the copyable element shows up in no operand column. Reviewers: Pull Request: https://github.com/llvm/llvm-project/pull/213937 https://invent.kde.org/qt/clang/llvm/-/commit/e3d847f07723f8f6ef62a540452344ae4d155007 Git commit 9f4047e46e6be19672f7635a174b5cd7b0bd9f1d by GitHub (on behalf of npanchen) on 04/08/2026 at 13:27.. [ASan] Handle allocas in non-default address spaces (#213764) Do addrspace cast for allocas that live in address space different from the datalayout's alloca address space, otherwise ASan will crash during use replacement https://invent.kde.org/qt/clang/llvm/-/commit/9f4047e46e6be19672f7635a174b5cd7b0bd9f1d Git commit 94f8dc842faacdc692efb2912ec0e9f9d0a3e08d by Tom Stellard on 04/08/2026 at 13:29.. workflows/upload-release-artifact: Make this action self-contained The action now checks out its own files so calling worklfows don't need to do this. This helps prevent mistakes where the calling workflow does not checkout the right files causing this action to fail. https://invent.kde.org/qt/clang/llvm/-/commit/94f8dc842faacdc692efb2912ec0e9f9d0a3e08d Git commit f690eb55b8970cd74782cb7e93bd66655b41005e by Tom Stellard on 04/08/2026 at 13:29.. Fix indnetation https://invent.kde.org/qt/clang/llvm/-/commit/f690eb55b8970cd74782cb7e93bd66655b41005e Git commit 0d1ffee6d43ec1e03eba67f279fc7bb852a4b608 by Tom Stellard on 04/08/2026 at 13:29.. Move checkout and gate it on upload https://invent.kde.org/qt/clang/llvm/-/commit/0d1ffee6d43ec1e03eba67f279fc7bb852a4b608