[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/main'.
Changed from cd653d59160ee91fd33b949cc6989c7945d9cdf3 to b8bd63c69c83bc13b31e808f9b7d84a562251396
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 1333e0a05d822b96e76d9edf55f1af66e2cbb0b3 by GitHub (on behalf of Nikolas Klauser) on 27/07/2026 at 11:21..
[libc++] Remove locale::id::__next_id from the ABI (#210360)

`__next_id` is only ever used inside the dylib, so we can avoid making it public.
https://invent.kde.org/qt/clang/llvm-project/-/commit/1333e0a05d822b96e76d9edf55f1af66e2cbb0b3

Git commit e10674378de70647d666499c6fd7f11a7ee03f6e by GitHub (on behalf of Tim Besard) on 27/07/2026 at 11:22..
[SPIR-V] Fix direct return of aggregate extractvalue (#209762)

SPIRVPrepareFunctions rewrites aggregate function returns to i32 value
IDs, but an aggregate extractvalue used directly by ret kept its
original type, leaving invalid IR for the verifier. Mutate the lowered
spv_extractv result when it feeds a rewritten return so the LLVM type
matches while the registry preserves the aggregate SPIR-V type.

Closes https://github.com/llvm/llvm-project/issues/208899.
Replaces https://github.com/llvm/llvm-project/pull/209027 (that PR seems
spam? although the diagnosis was largely correct)

Co-authored-by: Claude Fable 5 <[email protected]>
https://invent.kde.org/qt/clang/llvm-project/-/commit/e10674378de70647d666499c6fd7f11a7ee03f6e

Git commit 187d096d44bfabc0a392d0abf1d87123e67f5efb by GitHub (on behalf of Hardik Kumar) on 27/07/2026 at 11:28..
[clang] Fix the StringRef assertion failure for non-narrow strings. (#212108)

StringRef assertion fires up when passing wide literals to
`__builtin_nanf()`.

The patch updates the `TryEvaluateBuiltinNan` method to reject
non-narrow string literals preventing the downstream assertion failure
caused by `getString()` in cases where the user might pass a non-narrow
/ non 1 byte literal."

Fix #205306
https://invent.kde.org/qt/clang/llvm-project/-/commit/187d096d44bfabc0a392d0abf1d87123e67f5efb

Git commit c84136af3d15893fe3f2bc608280ccaa71e18db1 by GitHub (on behalf of William Tran-Viet) on 27/07/2026 at 11:32..
[libc++] Inline `text_encoding` alias offset table std::count to 884 (#207471)

- Add count test to verify the exact number of aliases our table
contains
- Should reduce compile time cost of gathering that count
https://invent.kde.org/qt/clang/llvm-project/-/commit/c84136af3d15893fe3f2bc608280ccaa71e18db1

Git commit 42b4ee6383e340c4c3ab4cfddd17f864ab331e0d by GitHub (on behalf of Konrad Kleine) on 27/07/2026 at 11:42..
docs: Adjust HowToReleaseLLVM to include man page signing (#210092)

This adds documentation on how to sign man pages.
https://invent.kde.org/qt/clang/llvm-project/-/commit/42b4ee6383e340c4c3ab4cfddd17f864ab331e0d

Git commit f92e977a8e76a0e40e3af255f13c30b6710fd871 by GitHub (on behalf of Chibuoyim (Wilson) Ogbonna) on 27/07/2026 at 12:02..
[MLIR][Linalg] Fix crash on duplicate dimensions in linalg.broadcast (#211203)

per
[#210738](https://github.com/llvm/llvm-project/pull/210738#discussion_r3622744153)

Currently, the following crashes on verification with a segfault:
```
func.func @broadcast_rank0_tensor(%arg0: tensor<i32>, %arg1: tensor<32x2xi32>) -> tensor<32x2xi32> {
  %0 = linalg.broadcast ins(%arg0 : tensor<i32>) outs(%arg1 : tensor<32x2xi32>) dimensions = [0, 0]
  return %0 : tensor<32x2xi32>
}
```

The verifier should reject cases like this where we have a duplicate
dimension. I've also added a couple of tests covering `linalg.broadcast`
on various input scenarios to confirm they are being handled properly.
https://invent.kde.org/qt/clang/llvm-project/-/commit/f92e977a8e76a0e40e3af255f13c30b6710fd871

Git commit 08c7b4203815b3502c04ecb9cd8b6dae21fc5661 by GitHub (on behalf of Łukasz Plewa) on 27/07/2026 at 12:08..
[offload] update llvm-gpu-loader the new liboffload allocation API (#212225)

PR #209196 split host memory allocations into a dedicated API. Update
llvm-gpu-loader to use the new host allocation function introduced by
that change.
https://invent.kde.org/qt/clang/llvm-project/-/commit/08c7b4203815b3502c04ecb9cd8b6dae21fc5661

Git commit dcfadf69caf127b021c3f7de0c8abc0e45bb3b64 by GitHub (on behalf of Lang Hames) on 27/07/2026 at 12:12..
[orc-rt] Make ThreadPoolRunner a generic task runner. (#212229)

Commit 01683dbe7e207 generalized the Session's dispatch mechanism to
hand each runner an opaque Task (move_only_function<void()>), and
simplified QueueingRunner accordingly, but failed to update
ThreadPoolRunner.

Update ThreadPoolRunner to conform to Session's dispatch requirements
and update its unit test to dispatch plain tasks rather than
wrapper-function calls.
https://invent.kde.org/qt/clang/llvm-project/-/commit/dcfadf69caf127b021c3f7de0c8abc0e45bb3b64

Git commit 2f60c93e01321a0434f8a3ad4f88afed9f35a583 by GitHub (on behalf of Łukasz Plewa) on 27/07/2026 at 12:14..
[SYCL] Update SYCL to use the new liboffload allocation API (#212223)

PR #209196 split host memory allocations into a dedicated API. Update
SYCL to use the new host allocation function introduced by that change.
https://invent.kde.org/qt/clang/llvm-project/-/commit/2f60c93e01321a0434f8a3ad4f88afed9f35a583

Git commit a48aefd6ea9404916b0efa53942cbeae2d9781ff by GitHub (on behalf of Arseniy Obolenskiy) on 27/07/2026 at 12:21..
[SPIR-V] Guard against infinite loop in decorateUsesAsNonUniform (#208224)

Add a visited set so an SSA cycle through a loop-carried phi does not
hang the worklist walk
https://invent.kde.org/qt/clang/llvm-project/-/commit/a48aefd6ea9404916b0efa53942cbeae2d9781ff

Git commit d7acf8cb4c00560d7f31eabd869a0a8d8fc7e313 by GitHub (on behalf of Lukas Sommer) on 27/07/2026 at 12:24..
[InlineSpiller] Avoid spill hoisting interference (#211809)

When hoisting spills and the source is a PHI, the "hoisted" spill may be
inserted only after the basic block prologue. This may require extending
this segment of the source value's live interval.

Abort the hoisting if this extension of the segment would interfere with
another live interval assigned to the same physical register.

Signed-off-by: Lukas Sommer <[email protected]>
https://invent.kde.org/qt/clang/llvm-project/-/commit/d7acf8cb4c00560d7f31eabd869a0a8d8fc7e313

Git commit 225e988b3d9e3bd05a0a79e071f07d22f1f1e0ad by GitHub (on behalf of Romanov Vlad) on 27/07/2026 at 12:29..
[AMDGPU] Add per-class register stress options (#210907)

Add options -amdgpu-stress-vgpr=N, -amdgpu-stress-agpr=N, and
-amdgpu-stress-sgpr=N to limit each register class independently by
reserving registers beyond N.
https://invent.kde.org/qt/clang/llvm-project/-/commit/225e988b3d9e3bd05a0a79e071f07d22f1f1e0ad

Git commit 3ca666f496681600f5528f4346c0303dd1171230 by GitHub (on behalf of Jonas Paulsson) on 27/07/2026 at 12:31..
[SystemZ] Improve handling of memmoves. (#196285)

Handle memmoves of constant lengths up to 256 bytes with target
instructions instead of libcall.
https://invent.kde.org/qt/clang/llvm-project/-/commit/3ca666f496681600f5528f4346c0303dd1171230

Git commit aa50eb69d6eba1bcdfe6d3a15f0b9b8e278e828b by GitHub (on behalf of Vladislav Dzhidzhoev) on 27/07/2026 at 12:50..
[DebugInfo][DwarfDebug] Move emission of types from beginModule() to endModule() (7/7) (#211536)

RFC
https://discourse.llvm.org/t/rfc-dwarfdebug-fix-and-improve-handling-imported-entities-types-and-static-local-in-subprogram-and-lexical-block-scopes/68544

This patch proposes to move the emission of types and type-like entities
from `DwarfDebug::beginModule()` to `DwarfDebug::endModule()`.
Effectively, this changes nothing but the order of debug entities in the
resulting DWARF.

This is needed to simplify DWARF emission in a context of proper support
of function-local types, making all the types handled in a single place,
together with other global and local entities.

This change has already been reviewed and approved in
https://reviews.llvm.org/D144008, but I’m opening a new PR for
visibility.

Co-authored-by: Kristina Bessonova <[email protected]>
https://invent.kde.org/qt/clang/llvm-project/-/commit/aa50eb69d6eba1bcdfe6d3a15f0b9b8e278e828b

Git commit 0695ea8d442c3271634892a7bec78b3b3a4368b9 by GitHub (on behalf of Kevin Bravo) on 27/07/2026 at 12:53..
[TableGen] Check for EOF in prepSkipRegion to avoid preprocessor crash. (#208961)

Part of #151476 

prepSkipRegion currently scans a line until it finds a newline before
advancing to the next line. It crashes if it finds an EOF first. This
change checks for EOF to prevent a segmentation fault.
https://invent.kde.org/qt/clang/llvm-project/-/commit/0695ea8d442c3271634892a7bec78b3b3a4368b9

Git commit 6bb73fd3e418d1bade9050776ddb6a8f84a8bfb3 by GitHub (on behalf of Lang Hames) on 27/07/2026 at 12:55..
[orc-rt] Fix maybe_unused attribute. (#212237)
https://invent.kde.org/qt/clang/llvm-project/-/commit/6bb73fd3e418d1bade9050776ddb6a8f84a8bfb3

Git commit 98d41d2f75395ab1f91198f2493cff62a33b80c1 by GitHub (on behalf of Nerixyz) on 27/07/2026 at 12:58..
[lldb][Windows] Disable debug heap by default (#212126)

This disables Windows' default debug heap when launching a process.

The motivation is similar to what Microsoft wrote on their [blog post
for Visual Studio
2015](https://devblogs.microsoft.com/cppblog/c-debugging-improvements-in-visual-studio-14/)
where they disabled it: The debug heap comes with a performance cost and
the [C runtime already does some heap
checking](https://learn.microsoft.com/en-us/cpp/c-runtime-library/crt-debug-heap-details?view=msvc-170).

Towards #201690. Notably, lldb-dap won't set this when launching in a
terminal. I think we'd want an option similar to `disableASLR` for
lldb-dap.
https://invent.kde.org/qt/clang/llvm-project/-/commit/98d41d2f75395ab1f91198f2493cff62a33b80c1

Git commit 456e73ff83e0ea352509d9fb687660bd3c2eb390 by GitHub (on behalf of Yingwei Zheng) on 27/07/2026 at 13:03..
[SimplifyCFG] Fix DomTree update in `simplifySwitchWhenUMin` (#212008)

In the test `switch_remove_dead_cases`, both case 4 and case 5 jump into
bb `%case_ret`. Thus, the edge will be removed twice, triggering an
assertion failure. This patch only removes the edge in DT when we remove
the last edge to `DeadCaseBB`.
https://invent.kde.org/qt/clang/llvm-project/-/commit/456e73ff83e0ea352509d9fb687660bd3c2eb390

Git commit e2b23dbda6551c81377ae712749c58c27eefb857 by GitHub (on behalf of David Green) on 27/07/2026 at 13:20..
[AArch64] Test all cost kinds in clmul tests. NFC (#212246)
https://invent.kde.org/qt/clang/llvm-project/-/commit/e2b23dbda6551c81377ae712749c58c27eefb857

Git commit b10d4473a01e77ef0c973d29610ebc81c5a20c1a by GitHub (on behalf of Arseniy Obolenskiy) on 27/07/2026 at 13:20..
[SPIR-V] Fix vloada_halfn builtin number (#212218)

vloada_halfn was incorrectly mapped to vload_half builtin number (174)
instead of its own (179), causing it to demangle to the wrong OpenCL
builtin
https://invent.kde.org/qt/clang/llvm-project/-/commit/b10d4473a01e77ef0c973d29610ebc81c5a20c1a

Git commit c18296f5db60be977366a42f044a623b557f5dd2 by GitHub (on behalf of Matt Arsenault) on 27/07/2026 at 13:21..
DAG: Canonicalize undef shuffle operands and results to poison (#212102)
https://invent.kde.org/qt/clang/llvm-project/-/commit/c18296f5db60be977366a42f044a623b557f5dd2

Git commit 8c835ee87def288eca2587293499008dce54c4e7 by GitHub (on behalf of Timur Golubovich) on 27/07/2026 at 13:25..
[VectorCombine] Align shrinkLoadForShuffles to register boundaries (#209775)

Round up the shrunk load element count to the next full vector register
boundary to avoid scalar remainders that prevent shuffle lowering.

For example, on X86 AVX-512 a <16 x double> load with shuffle indices
1-8 was shrunk to <9 x double>. This legalizes to v8f64 + scalar f64,
and the scalar operand in BUILD_VECTOR prevents DAGCombiner from folding
it into a VECTOR_SHUFFLE, producing ~15 instructions instead of 2
(VMOVDQA64 + VALIGNQ).
https://invent.kde.org/qt/clang/llvm-project/-/commit/8c835ee87def288eca2587293499008dce54c4e7

Git commit bd9e922d448ce6a492b1b323c359b7c8a4030ad9 by GitHub (on behalf of Simon Tatham) on 27/07/2026 at 13:31..
[libc][AArch64] Avoid -Wshadow warnings about uint128_t etc (#212227)

`aarch64/inline_memset.h` defines type aliases `uint128_t`, `uint256_t`
and `uint512_t` at file scope. `aarch64/inline_memmove.h`, alongside it,
defines the same aliases at function scope. If both headers are included
by the same source file, this can lead to a warning about the
function-scope aliases shadowing the file-scope ones, which turns into a
compile error if you build with `clang -Werror -Wshadow`.

Commit a81db64570f94c2 (PR #210895) exposed this latent compile failure,
by making `CPP/string.h` include both files. But there's nothing wrong
with that, so the right fix is to make it _safe_ to include both files,
not to stop doing it.

This commit moves the function-scope aliases in memmove up to file
scope. That makes them duplicate definitions in the _same_ scope, which
doesn't cause the same error.

Other options would be to move the memset aliases down into function
scope (duplicating them in two functions), or to move them into a tiny
AArch64-specific header file with an include guard. Both of those are
more intrusive than this fix.
https://invent.kde.org/qt/clang/llvm-project/-/commit/bd9e922d448ce6a492b1b323c359b7c8a4030ad9

Git commit acf113c195682ec3eceafd9a0023f1e8401e71c9 by GitHub (on behalf of Charles Zablit) on 27/07/2026 at 13:34..
[lldb][Windows] Preserve breakpoint locations across process exit (#212219)

`ProcessWindows::OnExitProcess` unloads the executable module with
`delete_locations=true`, which deletes the target's breakpoint locations
when the debuggee exits. Other platforms keep them, so inspecting a
breakpoint after the process died returns no location on Windows.

Pass `delete_locations=false` to match the other platforms.
https://invent.kde.org/qt/clang/llvm-project/-/commit/acf113c195682ec3eceafd9a0023f1e8401e71c9

Git commit 0a75f1f77fe54e9e366e48f78c9865aee8839809 by GitHub (on behalf of Serafean) on 27/07/2026 at 13:38..
[libclang]Visit lambda init-capture as VarDeclaration (#174116)

```
int foo(){
    int i = 42;
    int j = 43;

    auto l1 = [x = i, &j ](){};
}
```

in the lambda capture:
- `x` is visited as VariableRef (referencing an unvisited VarDecl at the
same location)
- `i` is visited as DelcRefExpr (fair enough, same as in an assignment)
- `j` is visited as VariableRef

Visit `x` as a `VarDecl`, and stop visiting it as a `VariableRef`, as it
makes no sense (referencing itself at an unvisited cursor).

---------

Co-authored-by: Serafean <[email protected]>
https://invent.kde.org/qt/clang/llvm-project/-/commit/0a75f1f77fe54e9e366e48f78c9865aee8839809

Git commit 26480c7d1678fbea8e7b1cd064775d0f48649f91 by GitHub (on behalf of Petar Avramovic) on 27/07/2026 at 13:45..
AMDGPU/GlobalISel: Test for cs_chain argument from G_EXTRACT_VECTOR_ELT (#212247)

This is a bug since G_EXTRACT_VECTOR_ELT will end up with a register
class on the dst operand. The combiner will crash because of it.
https://invent.kde.org/qt/clang/llvm-project/-/commit/26480c7d1678fbea8e7b1cd064775d0f48649f91

Git commit be2e6bc89a8a9f421bbc50c72425a2c7436c604d by GitHub (on behalf of Romanov Vlad) on 27/07/2026 at 13:54..
[AMDGPU] RewriteMFMAFormStage: single exit copy for same-block uses (#209179)

When multiple VGPR-requiring uses of an MFMA dst are in the
same block as the MFMA, share a single AGPR->VGPR copy placed
before the earliest use, instead of creating one per use.
https://invent.kde.org/qt/clang/llvm-project/-/commit/be2e6bc89a8a9f421bbc50c72425a2c7436c604d

Git commit 4fbefd6025ca1a9e12683a766dbbbeadd2861136 by GitHub (on behalf of Florian Hahn) on 27/07/2026 at 14:00..
[ConstraintElim] Skip decomposition if precondition does not hold. (#212140)

Currently we fully decompose expressions, collect all preconditions and
then bail out if any precondition is false. This means we miss out on
simplifications in cases where the precondition does not hold, but we could 
still reason about the un-decomposed sub-expression.

This patch updates `decompose` to take the constraint system as argument
instead and eagerly check preconditions. If the precondition does not hold, 
we don't decompose the sub-expression and don't further recurse, but simply
treat the sub-expression as variable.

This improves results in some cases
(https://github.com/dtcxzyw/llvm-opt-benchmark-nightly/pull/794)
and is also slightly cheaper (or neutral) in most cases compile-time
wise, as we cut off decomposition before recursing further. The number of queries
for preconditions overall should stay the same

PR: https://github.com/llvm/llvm-project/pull/212140
https://invent.kde.org/qt/clang/llvm-project/-/commit/4fbefd6025ca1a9e12683a766dbbbeadd2861136

Git commit 8a3d15b952636489a14e1244fdfe871b730d67d7 by GitHub (on behalf of forking-google-bazel-bot[bot]) on 27/07/2026 at 14:04..
[Bazel] Fixes 98d41d2 (#212244)

This fixes 98d41d2f75395ab1f91198f2493cff62a33b80c1 (#212126).

Buildkite error link:
https://buildkite.com/llvm-project/upstream-bazel/builds?commit=98d41d2f75395ab1f91198f2493cff62a33b80c1

Co-authored-by: Google Bazel Bot <[email protected]>
https://invent.kde.org/qt/clang/llvm-project/-/commit/8a3d15b952636489a14e1244fdfe871b730d67d7

Git commit 919919c80a834405a2908525372c754c03f47606 by GitHub (on behalf of Nico Weber) on 27/07/2026 at 14:06..
[gn] port 98d41d2f75395a (PlatformWindowsProperties.td) (#212257)
https://invent.kde.org/qt/clang/llvm-project/-/commit/919919c80a834405a2908525372c754c03f47606

Git commit 6ca0e4a67193836fe696eb0273d523da1950cfda by GitHub (on behalf of Leandro Lupori) on 27/07/2026 at 14:31..
[mlir][OpenMP] Fix update of linear iteration variables (#183800)

The final value of a linear iteration variable must be the loop
limit_value + step. Before this patch it was limit_value.

Fixes #170784.
https://invent.kde.org/qt/clang/llvm-project/-/commit/6ca0e4a67193836fe696eb0273d523da1950cfda

Git commit 7e607a0931394460ab9f4994f6928553da13e472 by GitHub (on behalf of muhammadshayanasim1-web) on 27/07/2026 at 14:35..
[InstCombine] Copy metadata in select-to-masked.load fold (#211965)

Preserve AA metadata when folding select of masked.load to masked.load.
We cannot preserve value metadata, as it may not be valid for the new
passthru.

Fixes #209022.
 
Assisted-by: Claude
https://invent.kde.org/qt/clang/llvm-project/-/commit/7e607a0931394460ab9f4994f6928553da13e472

Git commit f613ead38efdc327c78d4b00f9195e84092c2d57 by GitHub (on behalf of Petar Avramovic) on 27/07/2026 at 14:40..
AMDGPU/GlobalISel: Fix cs_chain use of constrainOperandRegClass (#212248)

Make a copy before constraining to avoid setting register class on
a register that can be defined by generic opcode.
https://invent.kde.org/qt/clang/llvm-project/-/commit/f613ead38efdc327c78d4b00f9195e84092c2d57

Git commit 491f16472b0f08ed72481b671c1470c6de953fa0 by GitHub (on behalf of Caroline Newcombe) on 27/07/2026 at 14:48..
[flang][hlfir] Prefer a constant-shape operand for elemental array results (#209791)

Elemental operands are conformable, so their extents are identical and
the result shape may be taken from either operand. This patch prefers an
operand whose shape is a compile-time constant, producing a statically
shaped result. The left operand is checked first to avoid churn in lit
test expectations.
https://invent.kde.org/qt/clang/llvm-project/-/commit/491f16472b0f08ed72481b671c1470c6de953fa0

Git commit d6b8c83138892bd64d33e44102e0aed6cfe3556f by GitHub (on behalf of Florian Hahn) on 27/07/2026 at 14:54..
[ConstraintElim] Change return type of ConstraintTy::empty to bool (NFC) (#212259)

empty() returns a bool, fix return type as pointed out in
https://github.com/llvm/llvm-project/pull/212140.
https://invent.kde.org/qt/clang/llvm-project/-/commit/d6b8c83138892bd64d33e44102e0aed6cfe3556f

Git commit 750ed0a8239147a5ce81eb31d54591c2b01b8e8f by GitHub (on behalf of Michael Klemm) on 27/07/2026 at 14:59..
[Flang][OpenMP] Add support for -fopenmp-target-fast (#212181)

The `-fopenmp-target-fast` is a meta flag that enables several
optimizations for device code.
https://invent.kde.org/qt/clang/llvm-project/-/commit/750ed0a8239147a5ce81eb31d54591c2b01b8e8f

Git commit 07dfc602db220f015fab975248d3376a5ffe03f7 by GitHub (on behalf of Krzysztof Parzyszek) on 27/07/2026 at 15:02..
[flang][OpenMP] Split DEFAULT into DEFAULT(dsa) and DEFAULT(variant) (#212128)

The 5.0 and 5.1 specs used DEFAULT clause for what is now OTHERWISE.
Separate these two claues to be able to specify their properties
independently.
https://invent.kde.org/qt/clang/llvm-project/-/commit/07dfc602db220f015fab975248d3376a5ffe03f7

Git commit a0710105925b8455f38fd861712279d04f656d4c by GitHub (on behalf of Sean Clarke) on 27/07/2026 at 15:03..
[HashRecognize] Fix two more compiler hangs on dense use-def chains (#211887)

The bug in `digRecurrence` fixed by #211711 applies to
`isConditionalOnXorOfPHIs` and `containsUnreachable` as well. Implement
a fix for both using the same approach.
- `isConditionalOnXorOfPHIs` hang: https://godbolt.org/z/jo8eMvoeY
- `containsUnreachable` hang: https://godbolt.org/z/Eeo89W6qW

Assisted-by: Claude Opus 5
https://invent.kde.org/qt/clang/llvm-project/-/commit/a0710105925b8455f38fd861712279d04f656d4c

Git commit 3d20ba7135d93de7a6cd7db5a196c41d25e391a7 by GitHub (on behalf of Nikolas Klauser) on 27/07/2026 at 15:16..
[libc++][NFC] Use [[deprecated]] for __grow_by (#209126)

`__grow_by` is an internal function, and we deprecated it to avoid
accidental use of it inside the library. `_LIBCPP_DEPRECATED_` is meant
for user-configuration, which doesn't apply here.

Fixes #124940
https://invent.kde.org/qt/clang/llvm-project/-/commit/3d20ba7135d93de7a6cd7db5a196c41d25e391a7

Git commit 92cdb9dc836e24705c46b77ebabf4f3596a56998 by GitHub (on behalf of Gang Chen) on 27/07/2026 at 15:16..
[AMDGPU] Add amdgcn builtin for s_prefetch_inst (#211642)
https://invent.kde.org/qt/clang/llvm-project/-/commit/92cdb9dc836e24705c46b77ebabf4f3596a56998

Git commit 39d3b9344f4796e963d8d73bfd1e7cd3014d1fe6 by GitHub (on behalf of Alex Strelnikov) on 27/07/2026 at 15:19..
[libc] Add stub implementation for strptime. (#211088)

This PR adds a stub for `strptime` under
`LLVM_LIBC_ENABLE_EXPERIMENTAL_ENTRYPOINTS` for x86_64 and aarch64 as a
first step in implementing the function.
https://invent.kde.org/qt/clang/llvm-project/-/commit/39d3b9344f4796e963d8d73bfd1e7cd3014d1fe6

Git commit 6baa9c9ac22c60e00471c6412387b5a48aa12e3e by GitHub (on behalf of Yao Qi) on 27/07/2026 at 15:20..
[lldb][Mach-O] Fix null __LINKEDIT deref in ParseSymtab for shared cache images (#207448)

`ObjectFileMachO::ParseSymtab`, when handling a local shared cache image
(`MH_DYLIB_IN_CACHE` set and not read from memory), unconditionally
called
`linkedit_section_sp->GetFileOffset()` to slide the load command
offsets.
If the Mach-O has no `__LINKEDIT` segment, `FindSectionByName` returns a
`null` SectionSP, and this is a member call on a null pointer (caught by
UBSan;
crashes in release builds).

```
* thread #1, queue = 'com.apple.main-thread', stop reason =
  EXC_BAD_ACCESS (code=1, address=0x68)
   * frame #0: 0x0000000100121ff0 ObjectFileMachOTests`lldb_private::Section::GetFileOffset(this=0x0000000000000000) const at Section.h:181:49 [opt] [inlined]
     frame #1: 0x0000000100121ff0 ObjectFileMachOTests`ObjectFileMachO::ParseSymtab(this=0x00000001055616b0, symtab=
0x000000016fdfe988) at ObjectFileMachO.cpp:2353:59 [opt]
```

Guard the shared-cache slide branch with a null check on
`linkedit_section_sp`, matching the existing guard used on the in-memory
path.

Found by lldb-target-fuzzer.

---------

Co-authored-by: Jonas Devlieghere <[email protected]>
https://invent.kde.org/qt/clang/llvm-project/-/commit/6baa9c9ac22c60e00471c6412387b5a48aa12e3e

Git commit e4c07b9c57952cd099d72985044f70e0e6f02756 by GitHub (on behalf of Aiden Grossman) on 27/07/2026 at 15:23..
[AArch64] Rename SVEShuffleOpts to AArch64SVEShuffleOpts

To be more consistent with other AArch64 passes and other CodeGen passes
in general which are almost always prefixed with the name of the target
(and ideally will be once we finish the NewPM transition).

Reviewers: davemgreen, huntergr-arm, paulwalker-arm

Pull Request: https://github.com/llvm/llvm-project/pull/211876
https://invent.kde.org/qt/clang/llvm-project/-/commit/e4c07b9c57952cd099d72985044f70e0e6f02756

Git commit dd32eae8187d88b902a5a3b988f39d06d86cd797 by GitHub (on behalf of Aiden Grossman) on 27/07/2026 at 15:25..
[ThinLTO] Mark AssignGUIDPass as RequiredPassInfoMixin

PassInfoMixin is going away, so switch to RequiredPassInfoMixin and
remove the explicit isRequired implementation.

Reviewers: mtrofin, orodley

Pull Request: https://github.com/llvm/llvm-project/pull/211987
https://invent.kde.org/qt/clang/llvm-project/-/commit/dd32eae8187d88b902a5a3b988f39d06d86cd797

Git commit c44443f22b6f4f345e20cf947d26e873036923bf by GitHub (on behalf of Anshul Nigham) on 27/07/2026 at 15:33..
[Docs] Reland Furo theme for LLVM docs (#211993)

Relands https://github.com/llvm/llvm-project/pull/184440 which was
reverted in https://github.com/llvm/llvm-project/pull/208619 because of
doc generation slowness.

The main root cause (https://github.com/llvm/llvm-project/issues/208786)
has been addressed, so attempting a reland at this point.

As before, Furo output at
https://nigham.github.io/llvm_docs_furo/LangRef.html

Comparing the generation times for "Build LLVM docs" step, this PR took
< 3m vs > 15m for the previous reverted PR.
https://invent.kde.org/qt/clang/llvm-project/-/commit/c44443f22b6f4f345e20cf947d26e873036923bf

Git commit 7f46263d2b6c01ee41ba7973b0c6c825f77cc8e2 by GitHub (on behalf of Jessica Clarke) on 27/07/2026 at 15:33..
[NFC][ELF] Use hasPhdrsCommands() wrapper instead of direct access (#212273)

This is the only place outside of LinkerScript/ScriptParser that
directly accesses the phdrsCommands member, introduced in 5a58e98c2018
("[ELF] Align the end of PT_GNU_RELRO associated PT_LOAD to a
common-page-size boundary (#66042)").
https://invent.kde.org/qt/clang/llvm-project/-/commit/7f46263d2b6c01ee41ba7973b0c6c825f77cc8e2

Git commit cbf48349e3e1cc0fe7944090cc825532d75b6c3e by GitHub (on behalf of Jessica Clarke) on 27/07/2026 at 15:34..
[NFC][ELF][PPC64] Pass address not offset to writePPC64LoadAndBranch (#212275)

Every caller currently subtracts the TOC base in its argument, so move
that into common code inside writePPC64LoadAndBranch. This will also
allow a different computation to be used in some cases in a future
commit.

Note that offset is now unsigned not signed; even previously, all
arguments were uint64_t, and all uses are unsigned, so making it signed
doesn't make much sense.
https://invent.kde.org/qt/clang/llvm-project/-/commit/cbf48349e3e1cc0fe7944090cc825532d75b6c3e

Git commit 0d70ca384090b709eb651fe4ea43398d591e4711 by GitHub (on behalf of Sadaf Ebrahimi) on 27/07/2026 at 15:39..
[scudo] Add unmap and eviction stats to Secondary

Track and print stats on the number of memory unmaps and cache evictions
in the MapAllocator. These statistics track total unmaps, as well as
unmaps triggered by exceeding the maximum cache entry size or the
maximum number of entries in the cache.
https://invent.kde.org/qt/clang/llvm-project/-/commit/0d70ca384090b709eb651fe4ea43398d591e4711

Git commit 30603f527e689520ab6b3166c8c8168bcee6202c by GitHub (on behalf of jinge90) on 27/07/2026 at 15:39..
Update image sha256 for libc fullbuild tests (#212168)
https://invent.kde.org/qt/clang/llvm-project/-/commit/30603f527e689520ab6b3166c8c8168bcee6202c

Git commit 2af577aab9be88a2669f1b31a354c57e3509b45e by GitHub (on behalf of Yao Qi) on 27/07/2026 at 15:40..
[lldb][DIL] Fix size check when assigning a signed value with DIL (#207404)

The DIL assignment path (`frame variable 'lhs = rhs'`) routes through
`ValueObject::SetValueFromInteger`, which verifies that the new value
fits
in the destination type before writing it. That size check compared the
source `APInt`'s raw 64-bit word, treated as an unsigned value, against
the
destination type's unsigned maximum:

```
  uint64_t u_max = (1 << (byte_size * CHAR_BIT)) - 1;
  if (*(value.getRawData()) > u_max)
    return llvm::createStringError("Illegal argument: new value is too big");
```

This is wrong in both directions:

* Small negative values that fit are rejected. A literal such as `-2`
has a
32-bit `APInt` of `0xFFFFFFFE`, whose raw word is `0xFFFFFFFFFFFFFFFE`.
  Compared as unsigned against a short's `0xFFFF` it looks "too big", so

```
  (lldb) frame variable 's = -2'
  error: Illegal argument: new value is too big
```
  even though -2 fits a `short`.

* Positive values that overflow the signed range are accepted and
silently
  wrap and stored a value that displayed as `-32768`.

```
  (lldb) frame variable 's = 32768'
  (short) s = -32768
```

Check the number of significant bits with respect to the destination's
signedness instead: `getSignificantBits()` for a signed destination and
`getActiveBits()` for an unsigned one. This accepts the valid range
(`[-32768, 32767]` for a signed short) and rejects everything outside
it.

Also extend the value before building the `DataExtractor` used to write
it.
The extractor reads exactly `byte_size` bytes from the `APInt`'s raw
storage,
so a value narrower than the destination must be extended to cover the
full
read. Use a sign extension so negative values keep their value in the
wider
destination.

Extends the DIL assignment API test (`TestFrameVarDILAssign`) to cover
assigning negative and boundary values to the existing `short` variable:
`-2`, `-4` (from `int j`), and the `[-32768, 32767]` boundaries are
accepted,
while `32768` and `-32769` are rejected. Without the fix these
narrow-type
assignments either fail with "new value is too big" or silently wrap.
https://invent.kde.org/qt/clang/llvm-project/-/commit/2af577aab9be88a2669f1b31a354c57e3509b45e

Git commit ce8a458b1bb954af613972ac5f914ac41b6710f1 by GitHub (on behalf of Zach Goldthorpe) on 27/07/2026 at 15:42..
[AMDGPU][True16] Apply v2s copies to non-def operand 0 (#212261)

`legalizeOperandsVALUt16` iterates over all operands except for the
zeroth one, as the zeroth one is typically a definition. However, if the
zeroth operand is an input (e.g., for a `V_CMP`), then this causes the
compiler to generate illegal machine code.

This patch extends `legalizeOperandsVALUt16` to apply also to the zeroth
operand, guarding for when this operand is a definition.
https://invent.kde.org/qt/clang/llvm-project/-/commit/ce8a458b1bb954af613972ac5f914ac41b6710f1

Git commit 3d822156e54ddff4ba60d7d338df910c12b90a8f by GitHub (on behalf of Sean Clarke) on 27/07/2026 at 15:54..
[HashRecognize] Fix compiler crash on missing latch compare instruction (#211895)

It is never checked whether a candidate loop `L` is latched by a compare
instruction, yet `L.getLatchCmpInst()` is added to the `Roots` for
`containsUnreachable`. If a loop is predicated on anything other than a
compare instruction, `getLatchCmpInst()` returns `nullptr`, causing
`containsUnreachable` to crash when calling `isa<PHINode>`. To fix,
consider loops where `L.getLatchCmpInst()` is null to be not in
canonical form, and reject them.
- Crash: https://godbolt.org/z/Tboo4jo5Y

Assisted-by: Claude Opus 5
https://invent.kde.org/qt/clang/llvm-project/-/commit/3d822156e54ddff4ba60d7d338df910c12b90a8f

Git commit 3031d2d67f2c428013fe0f1885eca56038ff9853 by GitHub (on behalf of David Spickett) on 27/07/2026 at 15:56..
[lldb][docs] Add hardware feature considerations to target doc (#211213)

As requested on #207166, this change adds information about hardware
features that can help or hinder porting LLDB.

I decided not to add an explicit "help" or "hinder" tag to them because
the descriptions are pretty general and I'd rather people took them as
starting points to think for themselves.

Debugging is a pile of things working together, so it's hard to say that
lack of one thing is "bad" without seeing it in context. Hopefully by
thinking about all these items for their target, developers will be able
to do that.
https://invent.kde.org/qt/clang/llvm-project/-/commit/3031d2d67f2c428013fe0f1885eca56038ff9853

Git commit 3d2d8a9905f31f45721d3f15a0d0042675d74ec5 by GitHub (on behalf of dmaclach) on 27/07/2026 at 15:58..
[clang][Tooling] Fix main header matching for headers with special characters. (#211934)

In Clang Tooling, escape HeaderStem before constructing MainIncludeRegex
to prevent special characters (such as '+') from being interpreted as
regex operators. Useful for Objective-C where "Foo+Bar.h" headers are
very common for categories.
https://invent.kde.org/qt/clang/llvm-project/-/commit/3d2d8a9905f31f45721d3f15a0d0042675d74ec5

Git commit bece576b2b682582e85c14bb1a9ea0ba7110ba80 by GitHub (on behalf of Aiden Grossman) on 27/07/2026 at 16:14..
[PowerPC][AIX] Mark LowerCommentStringPass as RequiredPassInfoMixin

Directly using isRequired is deprecated and PassInfoMixin will soon be
moved to a detail namespace.

Reviewers: tonykuttai, w2yehia, hubert-reinterpretcast

Pull Request: https://github.com/llvm/llvm-project/pull/212018
https://invent.kde.org/qt/clang/llvm-project/-/commit/bece576b2b682582e85c14bb1a9ea0ba7110ba80

Git commit ebd9c2c3b131f37d4cd12caf32d6b31b6852b148 by GitHub (on behalf of dmaclach) on 27/07/2026 at 16:14..
Add Objective-C support to include-cleaner's AST walker. (#211119)

Extend WalkAST to recognize and report references in Objective-C
constructs, including interfaces, protocols, message expressions,
properties, categories, compatible aliases, and instance variables. Also
update the test helper to support custom compiler arguments and add
corresponding unit tests.
https://invent.kde.org/qt/clang/llvm-project/-/commit/ebd9c2c3b131f37d4cd12caf32d6b31b6852b148

Git commit d2e3e96dedbedca0bfc39fc94f64e04cfa4ec74e by GitHub (on behalf of Louis Dionne) on 27/07/2026 at 16:20..
[libc++] Add benchmarks for std::next_permutation and std::prev_permutation (#210966)
https://invent.kde.org/qt/clang/llvm-project/-/commit/d2e3e96dedbedca0bfc39fc94f64e04cfa4ec74e

Git commit c060161b318f5162556d22d801a6ae704841c983 by GitHub (on behalf of Louis Dionne) on 27/07/2026 at 16:21..
[libc++] Add benchmarks for std::min_element, std::max_element and std::ranges::max (#209590)

Extend missing coverage and increase consistency across how the
benchmarks are written.
https://invent.kde.org/qt/clang/llvm-project/-/commit/c060161b318f5162556d22d801a6ae704841c983

Git commit a3b6e0baca37a717b3c498c21514256df4c29ef2 by GitHub (on behalf of Louis Dionne) on 27/07/2026 at 16:21..
[libc++] Add benchmark for std::nth_element (#210112)
https://invent.kde.org/qt/clang/llvm-project/-/commit/a3b6e0baca37a717b3c498c21514256df4c29ef2

Git commit 20f06e490149867d2a261cbcca41fa176bdc87b1 by GitHub (on behalf of Marc Auberer) on 27/07/2026 at 16:23..
[IR][NFC] Remove DbgInstPtr PointerUnion (#212233)

DbgInstPtr was needed in the transitionary phase between intrinsics and
records, but can be removed now.
https://invent.kde.org/qt/clang/llvm-project/-/commit/20f06e490149867d2a261cbcca41fa176bdc87b1

Git commit 26bf39cdba0bfcd0ea781f95cf44519922a8eb56 by GitHub (on behalf of Jessica Clarke) on 27/07/2026 at 16:29..
[ELF][PowerPC] Don't assume TOC pointer is valid in IPLT entries (#207555)

Unlike normal PLT entries, IPLT entries can be called indirectly even
when in PIEs/DSOs, and so there's no guarantee on what's in the TOC
pointer register at that time. Therefore we must emit variants of the
existing code that work without it, whether r12-relative (playing the
same role as MIPS's $25) in the same number of instructions, or first
retrieving PC in an i386-like manner, being careful not to clobber LR.
On 32-bit PowerPC even direct calls to IPLT entries face the same issue,
since we'd use the TOC base of the resolver, which may not be the same
as the caller, even within the same object.

Normal canonical PLTs still look broken on 64-bit PowerPC as they use
the TOC pointer register too, and similarly on 32-bit PowerPC for PIEs.
We should probably treat these cases the same as PIE on i386 (except
including PDEs for 64-bit PowerPC), where it's an error due to the use
of %ebx in PLT entries.
https://invent.kde.org/qt/clang/llvm-project/-/commit/26bf39cdba0bfcd0ea781f95cf44519922a8eb56

Git commit 0733641570c25e6323e39c4ee66693a4668429a8 by GitHub (on behalf of Hui) on 27/07/2026 at 16:32..
[libc++][test] re-enable clear padding runtime test (#211258)
https://invent.kde.org/qt/clang/llvm-project/-/commit/0733641570c25e6323e39c4ee66693a4668429a8

Git commit de793e832cc5cddf9d8554ec07f42e1298908f72 by GitHub (on behalf of Zach Goldthorpe) on 27/07/2026 at 16:44..
[AMDGPU][True16] Retain `hi16` subregisters through v2s copies (#211848)

The current legalisation for SGPR/VGPR copies with mismatched sizes does
not check which VGPR subregister is used, and defaults to using `lo16`.
If the `hi16` subregister is used instead, this information is lost, and
the subregister is incorrectly replaced with `lo16`.

This patch retains the subregister used when legalising the copy.
https://invent.kde.org/qt/clang/llvm-project/-/commit/de793e832cc5cddf9d8554ec07f42e1298908f72

Git commit ec96f85d6d82c5e71b36f9c827f09bb3b4825390 by GitHub (on behalf of Matt Arsenault) on 27/07/2026 at 16:45..
TableGen: Add first class support for processor aliases (#211775)

Previously isCPUStringValid was virtual so TableGen could emit an
AArch64 specific hack for recognizing cpu aliases. Teach tablegen
about aliases, and insert each alias into the CPU subtype table as its
own entry (sorted by name, carrying the canonical processor's features
and scheduling model).

There is further opportunity for code sharing improvements. AArch64's
aliases are consumed by ARMTargetDefEmitter to emit a custom inc file
in TargetParser which should be universalized.

Co-authored-by: Claude (Claude-Opus-4.8) <[email protected]>
https://invent.kde.org/qt/clang/llvm-project/-/commit/ec96f85d6d82c5e71b36f9c827f09bb3b4825390

Git commit 58a6567a166e0cb44227d162914778176a4faf62 by GitHub (on behalf of Matt Arsenault) on 27/07/2026 at 16:45..
AMDGPU: Use ProcessorAlias for legacy arch names (#211776)

Older targets have aliasing names which were previously implemented
by defining a second copy of the processor, identical except for the
name Use the recently improved tablegen mechanism for defining name-only
aliases. This dedupliates some redundant table entries, like the sched model.

Co-authored-by: Claude (Claude-Opus-4.8) <[email protected]>
https://invent.kde.org/qt/clang/llvm-project/-/commit/58a6567a166e0cb44227d162914778176a4faf62

Git commit d53cb74cbbc24fc5deba87b94ec38a7636bb52a9 by GitHub (on behalf of Matt Arsenault) on 27/07/2026 at 16:52..
X86: Use ProcessorAlias for duplicated processor names (#211953)

Many X86 processors were defined multiple times under different names,
emitting an identical ProcessorModel for each spelling and duplicating
the feature masks, tune features, and scheduling model index in the
subtype table.

Define each processor once under its canonical name and express the
alternate spellings with ProcessorAlias, using the tablegen alias
mechanism. This deduplicates the redundant subtype table entries and
saves about 4.6k with the new alias table (#211952)

Co-Authored-By: Claude (Claude-Opus-4.8) <[email protected]>
https://invent.kde.org/qt/clang/llvm-project/-/commit/d53cb74cbbc24fc5deba87b94ec38a7636bb52a9

Git commit 7baccda8dde277b16cb87318536b3ca70d448db1 by GitHub (on behalf of Fangrui Song) on 27/07/2026 at 16:56..
[LoopInfo] Build dominator tree only for irreducible CFG (#212098)

analyze() requires a dominator tree, so LoopAnalysis and
MachineLoopAnalysis request one for every function, though only an
irreducible CFG queries it. Clients that build their own, from
InlineCost to XRayInstrumentation, need it for nothing else.

Take the function and a callback returning the tree instead, and call it
when an edge re-enters a loop. Add an analyze(F) overload for a client
that holds no tree.

The number of dominator tree builds does not change in an -O2 pipeline
building sqlite3.bc, where SROA and InstCombine cache one before
LoopAnalysis runs.

Tests that observed the tree through LoopAnalysis now require it
explicitly.

MachineLoopInfoWrapperPass keeps requiring one: the legacy pass manager
cannot provide it on demand.

Aided by Claude Opus 5
https://invent.kde.org/qt/clang/llvm-project/-/commit/7baccda8dde277b16cb87318536b3ca70d448db1

Git commit 3c6d9cdb08c9245bb4d80e3262f74ea372046bcb by GitHub (on behalf of Tom Stellard) on 27/07/2026 at 16:58..
workflows/release-binaries: Add missing action to checkout (#211720)

The upload-release-artifact action uses the require-team-membership
action so we need to make sure that latter is checkout out when calling
upload-release-artifact.
https://invent.kde.org/qt/clang/llvm-project/-/commit/3c6d9cdb08c9245bb4d80e3262f74ea372046bcb

Git commit 07aa3b710f2622f662cab7a53ddf1288c725a9be by GitHub (on behalf of Florian Hahn) on 27/07/2026 at 17:00..
[SLP] Only consider BuildVector inserts into the same object. (#212269)

When following insertelement instruction for a BuildVector sequence, we
may discover a user that inserts into a different vector.

Bail out when that happens instead of crashing.

PR: https://github.com/llvm/llvm-project/pull/212269
https://invent.kde.org/qt/clang/llvm-project/-/commit/07aa3b710f2622f662cab7a53ddf1288c725a9be

Git commit e59df8e339bc5bc07991e0a67d3d0cb8c25a94c2 by GitHub (on behalf of Diego Novillo) on 27/07/2026 at 17:06..
[SPIRV] Emit NonSemantic DebugTypeArray. (#211537)

This PR adds `DebugTypeArray` to `SPIRVNonSemanticDebugHandler`:

1. `partitionTypes` buckets `DICompositeType` nodes tagged
`DW_TAG_array_type` without `DINode::FlagVector` (vectors are emitted
separately).
2. `emitNonSemanticGlobalDebugInfo` emits one `DebugTypeArray` per node
after the pointer types and records the id in `DebugTypeRegs`.
3. `emitDebugTypeArray` appends one `OpConstant` component count per
`DISubrange`, in subrange order. A subrange with no constant count emits
0, matching `OpTypeRuntimeArray`. An array whose element type is not in
`DebugTypeRegs` is skipped.

Clang lowers a matrix to a `DW_TAG_array_type` with two subranges in
`CGDebugInfo::CreateType(const ConstantMatrixType *)`, so an HLSL
`float4x4` emits as a `DebugTypeArray` with two counts.
`DebugTypeMatrix` needs a distinguishing flag from the frontend.

Added a couple of tests in `llvm/test/CodeGen/SPIRV/debug-info/`:

1. `debug-type-array.ll` covers a 1D array, a 2D array, a runtime-sized
array, and an array of vectors, and asserts that we are not emitting
`DebugTypeMatrix` (this will need to be changed when/if we start
emitting them).
2. `debug-type-array-skip-element-not-in-regs.ll` tests arrays of types
that cannot have debug info (I used array of pointers wit no DWARF
address space).
https://invent.kde.org/qt/clang/llvm-project/-/commit/e59df8e339bc5bc07991e0a67d3d0cb8c25a94c2

Git commit 2a323d5bb13890cc0667d5e21e43f41020f4f606 by GitHub (on behalf of Fangrui Song) on 27/07/2026 at 17:07..
[ProfileData] Make FunctionSamples profile-format flags atomic (#208964)

`lld/test/ELF/lto/sample-profile.ll` is failing in ThreadSanitizer
build.

In a parallel in-process ThinLTO link, each backend thread reads the
sample profile in SampleProfileLoader::doInitialization and writes these
globals.

Make the variables std::atomic<bool> so the same-value writes are
well-defined. An architectural ideal solution that holds these states in
a container seems very intrusive.
https://invent.kde.org/qt/clang/llvm-project/-/commit/2a323d5bb13890cc0667d5e21e43f41020f4f606

Git commit b8bd63c69c83bc13b31e808f9b7d84a562251396 by GitHub (on behalf of Razvan Lupusoru) on 27/07/2026 at 17:10..
[flang][acc] Emit NYI messages for unsupported directives (#211894)

Add an OpenACC MLIR pass that emits not-yet-implemented messages for
unsupported directives immediately after HLFIR generation. This allows
OpenACC dialect operations to be emitted with -emit-hlfir while making
full compilation fail early with clear diagnostics, instead of later
when unhandled OpenACC operations reach LLVM dialect conversion.
https://invent.kde.org/qt/clang/llvm-project/-/commit/b8bd63c69c83bc13b31e808f9b7d84a562251396
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.