[qt/clang/llvm]: 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
Pushed by mirror-service into branch 'upstream/main'.
Changed from 7c5c13003128d24142407bcfbaf1e951d22e3443 to 941a04e69ee8fe4c7a162b2f1e215aa8df867534
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 b5f3fed2801d71ed04218975f2a9eceb4146f087 by GitHub (on behalf of Florian Hahn) on 09/08/2026 at 17:30..
[VPlan] Move structural loop-region verification to verifier. (#215079)

VPlan::getVectorLoopRegion() finds the vector loop region by following
the last successor of each block, starting at the plan's entry. Verify
that plans have the shape this relies on: the entry must have no
predecessors, the region must be the only top-level loop region, and
each block on the path from the entry to the region must have a single
predecessor which has that block as its last successor.

This replaces the EXPENSIVE_CHECKS-only assert by checking in the
verifier, allowing better handling for VPlans violating the expectations
in unit tests.

Fixes an assertion with expensive checks after
https://github.com/llvm/llvm-project/pull/199437:
https://lab.llvm.org/buildbot/#/builders/187/builds/22485.
https://invent.kde.org/qt/clang/llvm/-/commit/b5f3fed2801d71ed04218975f2a9eceb4146f087

Git commit 3d8868224e00d2f3821380c7df985c61fd5dfab3 by GitHub (on behalf of Chris Apple) on 09/08/2026 at 17:36..
[sanitizer-common][rtsan] Mark unsupported tests (#213404)

From #213170, turning that PR into separate commits as suggested.

To enable rtsan in sanitizer common, first disable the tests that are
not trivially fixable (or will remain permanently unsupported).


Quoting from that other review, assuming all of these are merged and
rtsan is enabled for sanitizer-common
---
Darwin:
New tests that run and pass: 249
UNSUPPORTED: 26
Total: 275
UNSUPPORTED percentage: 9.5%

Linux is about the same, few additional unsupported:
New tests that run and pass: 249
UNSUPPORTED: 40
Total: 289
UNSUPPORTED percentage 13.8%

Again, some of these UNSUPPORTED are temporary, and we'll go back
through and clean them up (or at least discuss suport) so I expect this
percentage to go down over time
https://invent.kde.org/qt/clang/llvm/-/commit/3d8868224e00d2f3821380c7df985c61fd5dfab3

Git commit 08cb7d93f7e88de47c50f41ae08514f17c624f7a by GitHub (on behalf of Fangrui Song) on 09/08/2026 at 17:59..
[DomTree] Store immediate dominator as DFS number. NFC (#215059)

Replace the local variable `IDoms` and the pointer `InfoRec::IDom` with
a DFS number member.

Since `attachNewSubtree` and `reattachExistingSubtree` walk NumToNode in
DFS order, they can index IDom directly. Replace an always-false `if
(DT.getNode(W))` condition with an assert.
https://invent.kde.org/qt/clang/llvm/-/commit/08cb7d93f7e88de47c50f41ae08514f17c624f7a

Git commit 51de808337a1c98761bdcee40524589392c9e7f9 by GitHub (on behalf of Fangrui Song) on 09/08/2026 at 19:18..
[BFI] Detect irreducible SCC from CycleInfo instead of by failing. NFC (#214941)

BFI computes block frequencies with the Wu-Larus algorithm, extended (in
2014) to irreducible SCCs by modelling each one as a loop with multiple
headers.

Irreducible SCCs are detected by failing: mass distribution runs until
`addToDist` hits a retreating local edge to a non-header, then aborts,
packages the SCCs it found, and reruns.

CycleInfo already reports reducibility, so mark the innermost enclosing
loop (or the top level) while initializeLoops walks the cycle forest,
and package the marked regions before distributing any mass.  The abort
paths and both undo sites become asserts.

Aided by Claude Opus 5
https://invent.kde.org/qt/clang/llvm/-/commit/51de808337a1c98761bdcee40524589392c9e7f9

Git commit 003903d92260a5847464f5cb36fffc8d98bf53b8 by GitHub (on behalf of Shengxin Pei) on 09/08/2026 at 20:04..
[InstCombine] Fold select (A & Shift == 0 | B & Shift == 0), 0, Shift to Shift & A & B (#212132)

Implements the following folds:
1. `select ((A & Shift) == 0 || (B & Shift) == 0), 0, Shift`
$\rightarrow$ `Shift & A & B`
2. `select ((A & Shift) != 0 && (B & Shift) != 0), Shift, 0`
$\rightarrow$ `Shift & A & B`

Alive2:
[https://alive2.llvm.org/ce/z/KC0iRm](https://alive2.llvm.org/ce/z/KC0iRm)

Close #138650
https://invent.kde.org/qt/clang/llvm/-/commit/003903d92260a5847464f5cb36fffc8d98bf53b8

Git commit 61856db051aad12de96eaa50ca833646d524564f by GitHub (on behalf of Florian Hahn) on 09/08/2026 at 20:33..
[LoopPassManager] Exit early for loop-free fns in FunctionToLoopPass. (#215011)

FunctionToLoopPassAdopter::run is a no-op for loop-free functions, but
still requires retrieving all required analyses for the loop pass
manager.

Avoiding this for loop-free functions can reduce compile-time, with the
amount of saving depending on the type of workload:

CTMark reduces by -0.04% to -0.06% depending on exact config,
Clang-stage2 -0.13%


https://llvm-compile-time-tracker.com/compare.php?from=2f9775ad49bf8eb0d4a54592d40652df3e4f38dd&to=a37331c186f90da56a4c945f96813c816bedbbc6&stat=instructions:u

PR: https://github.com/llvm/llvm-project/pull/215011
https://invent.kde.org/qt/clang/llvm/-/commit/61856db051aad12de96eaa50ca833646d524564f

Git commit 44c91f656007e3f0941ec1567ede1f36ba64f36a by GitHub (on behalf of YongKang Zhu) on 09/08/2026 at 20:34..
[BOLT] Relax conditional tail calls in non-simple functions (#214400)

In compact code model relaxLocalBranches() skipped non-simple functions
that may have conditional tail calls targeting symbols in other far away
functions, which could fail during JITLink because the targets are out
of range.

Fix this by having relaxLocalBranches() process non-simple functions,
for which trampolines are added at the end of function body using
unconditional branches (128MB range) to reach far away targets.
https://invent.kde.org/qt/clang/llvm/-/commit/44c91f656007e3f0941ec1567ede1f36ba64f36a

Git commit 79341d1983b4b89f96987e9fcce8bd29df335a06 by GitHub (on behalf of Aiden Grossman) on 09/08/2026 at 20:37..
[Clang] Fix -Wunused-variable in #211482 (#215134)

This is only used in asserts, so fails in a release build without
asserts with -Werror -Wunused-variable with the latest clang.
https://invent.kde.org/qt/clang/llvm/-/commit/79341d1983b4b89f96987e9fcce8bd29df335a06

Git commit 00e62638454d1d2d757062b7430ff22e8185fcf2 by GitHub (on behalf of Fangrui Song) on 09/08/2026 at 20:39..
[BFI] Extract computeMassInIrreducibleLoop. NFC (#215137)

This is a load-bearing irreducible loop extension of the Wu-larus
algorithm.
Give it its own function.
https://invent.kde.org/qt/clang/llvm/-/commit/00e62638454d1d2d757062b7430ff22e8185fcf2

Git commit 5c8f5b66a033a0b0a8bf193d77ead4580bf07cca by GitHub (on behalf of Florian Hahn) on 09/08/2026 at 20:45..
[VPlan] Don't classify irregular element types as contiguous. (#215121)

Before classifying an access as continuous, check if it has an irregular
type. If so, do not widen incorrectly. This matches the logic of the
inner loop code path.
https://invent.kde.org/qt/clang/llvm/-/commit/5c8f5b66a033a0b0a8bf193d77ead4580bf07cca

Git commit 3f4f5199cc485e6a3556df4a0595276be82c2e47 by GitHub (on behalf of Florian Hahn) on 09/08/2026 at 20:48..
[ConstraintElim] Add tests for facts with decrementing IVs. (NFC) (#215143)

Extend test coverage with loops with decrementing inductions.
https://invent.kde.org/qt/clang/llvm/-/commit/3f4f5199cc485e6a3556df4a0595276be82c2e47

Git commit cc563cba784f3eb51daae59c6e216efc926f1795 by GitHub (on behalf of Jackson Stogel) on 09/08/2026 at 21:41..
[libc] Add realpath to linux entrypoints (#212925)
https://invent.kde.org/qt/clang/llvm/-/commit/cc563cba784f3eb51daae59c6e216efc926f1795

Git commit 3c13d111c91b3db2879e6ba36f827e86a3a5bbd8 by GitHub (on behalf of Jackson Stogel) on 09/08/2026 at 21:41..
[bazel][libc] Add targets for realpath (#215127)
https://invent.kde.org/qt/clang/llvm/-/commit/3c13d111c91b3db2879e6ba36f827e86a3a5bbd8

Git commit 8fd90189806e7fc70c035fd1a8c57ef2514b3651 by GitHub (on behalf of Fangrui Song) on 09/08/2026 at 22:05..
[DXIL,test] Fix WaveGetLaneCount.ll after #156338 (#215155)
https://invent.kde.org/qt/clang/llvm/-/commit/8fd90189806e7fc70c035fd1a8c57ef2514b3651

Git commit efe96c53557041be11e7fb4d43e6448cc09f6062 by GitHub (on behalf of Jackson Stogel) on 09/08/2026 at 22:35..
Revert "[libc] Add realpath to linux entrypoints" (#215156)

Reverts llvm/llvm-project#212925, the tests assume that `/tmp` is a
real, valid directory on the system, which is not true for all
buildbots. `libc-riscv32-qemu-yocto-fullbuild-dbg` in particular seems
to have a symlink or similar from `/tmp` to `/var/volatile/tmp`. See
https://github.com/llvm/llvm-project/pull/212925#issuecomment-5234167255.
https://invent.kde.org/qt/clang/llvm/-/commit/efe96c53557041be11e7fb4d43e6448cc09f6062

Git commit 8f695805904edad671892e624a4ada4031f3da1e by GitHub (on behalf of aabhinavg1) on 09/08/2026 at 22:36..
[PowerPC][AIX] Reject .weak_definition like ELF (#156072)

weak_definition is a Mach-O-specific directive and is not supported on
XCOFF. Previously it crashed the XCOFF streamer via report_fatal_error
in emitSymbolAttribute. Return false for MCSA_WeakDefinition like
MCELFStreamer does, so the parser rejects it with the same diagnostic as
ELF.
https://invent.kde.org/qt/clang/llvm/-/commit/8f695805904edad671892e624a4ada4031f3da1e

Git commit 941a04e69ee8fe4c7a162b2f1e215aa8df867534 by GitHub (on behalf of Stanislav Mekhanoshin) on 09/08/2026 at 23:03..
[AMDGPU] Keep TDM counter low (#214885)

Fixes: LCOMPILER-2572
https://invent.kde.org/qt/clang/llvm/-/commit/941a04e69ee8fe4c7a162b2f1e215aa8df867534
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.