[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/users/jtstogel/realpath/follow-symlinks'.
Changed from 0000000000000000000000000000000000000000 to 091bc586dab0c655aeed973c220e7ed943bc9e8f
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 a67eac3e141e1044dd98524a010e719b42f51f5e by GitHub (on behalf of Anshil Gandhi) on 17/07/2026 at 17:13..
[NFC][AMDGPU] Cleanup in SOPInstructions.td (#210367)

- Eliminate code which was accidentally merged during a merge-conflict
(https://github.com/llvm/llvm-project/pull/203155/changes#r3560059941)
- Remove comments as they are specific to usubsat.
https://invent.kde.org/qt/clang/llvm/-/commit/a67eac3e141e1044dd98524a010e719b42f51f5e

Git commit db1f902cd6a95c9b80136dfcbe8beb7a58290641 by GitHub (on behalf of Mishal Shah) on 17/07/2026 at 17:22..
Add macOS premerge check workflow (#207435)

Added a premerge check workflow for macOS self-hosted runners to build
and test projects.
https://invent.kde.org/qt/clang/llvm/-/commit/db1f902cd6a95c9b80136dfcbe8beb7a58290641

Git commit f04bf4791ae6d56b822f9bca6eb82ce4adccb989 by GitHub (on behalf of Mikhail R. Gadelha) on 17/07/2026 at 17:23..
[libc][NFC] Port raw syscall users to existing syscall_wrappers (#208039)

Several call sites still invoked syscall_impl directly (or carried
their own SYS_* fallback ladders) for syscalls that already have a
wrapper in src/__support/OSUtil/linux/syscall_wrappers.

This PR removes these syscalls in favor of the syscall_wrappers.
https://invent.kde.org/qt/clang/llvm/-/commit/f04bf4791ae6d56b822f9bca6eb82ce4adccb989

Git commit 246c752ef1b6098a7aa222f02ca09db76e17cabe by GitHub (on behalf of Jordan Rupprecht) on 17/07/2026 at 17:37..
[bazel][libc] Add layering deps (#210380)

Not sure why CI didn't catch it, but
c5837b469c6d6f35eb0822cd9ebd7c2aa7e2ab75 adds some targets that are
broken when layering checks are enabled.
https://invent.kde.org/qt/clang/llvm/-/commit/246c752ef1b6098a7aa222f02ca09db76e17cabe

Git commit c42ce32264f94a8800f4250d7b716cca55f77df6 by GitHub (on behalf of Reid Kleckner) on 17/07/2026 at 17:48..
[docs] Rename misc rst docs to md (#210208)

Tracking issue: #201242
See the [migration guide] for more information. 

[migration guide]:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines

This is the initial straight rename commit.

Many of these miscellaneous .rst files are not actually part of a real
docs build, since docs/conf.py does not exist for many of them.
https://invent.kde.org/qt/clang/llvm/-/commit/c42ce32264f94a8800f4250d7b716cca55f77df6

Git commit 9b096bb7abf7b57182ae8556451aa34dacd535ec by GitHub (on behalf of Jonas Devlieghere) on 17/07/2026 at 18:06..
[lldb] Add SBProtocolServer to start protocol servers programmatically (#209923)

Starting a protocol server (such as MCP, and in the future potentially
DAP) is only possible from the command line today, via `protocol-server
start`. Add an SB API so an embedder can start one in its own process
and learn where to connect.

SBProtocolServer wraps ProtocolServer::GetOrCreate/Start/Stop and
exposes the listening connection URI. This lets a tool host the engine's
protocol server in-process and talk to it as a normal client, reusing
the server's tools rather than reimplementing them.

Assisted-by: Claude
https://invent.kde.org/qt/clang/llvm/-/commit/9b096bb7abf7b57182ae8556451aa34dacd535ec

Git commit 2b6e9d261433f5ec8c49502f91d63dd7d07346c3 by GitHub (on behalf of Artem Belevich) on 17/07/2026 at 18:12..
[NVPTX] Set default value of nvptx-allow-ftz-atomics to true (#206154)

This is a follow-up to https://github.com/llvm/llvm-project/pull/200732.

Setting the default value of nvptx-allow-ftz-atomics to true preserves
the status quo. It allows the NVPTX backend to emit native
floating-point atomic add instructions by default, rather than falling
back to the CAS loop required for strict FTZ compliance.

Correct FTZ handling forces a lot of existing code to emit CAS loops.
This introduces thread divergence, breaking code that relies on atomic
operations being non-divergent (for example, warp-wide atomic additions
followed by a load of the reduced value without explicit
synchronization).

While FTZ-correct atomic behavior is desirable as a long-term default,
introducing thread divergence into a common operation that previously
"happened to work" without synchronization is highly disruptive.
Defaulting to true makes the FTZ-correct behavior opt-in for now,
allowing users time to audit and adapt their code.

Test cases are updated to verify both enabled and disabled states of the
option, alongside the new default behavior.
https://invent.kde.org/qt/clang/llvm/-/commit/2b6e9d261433f5ec8c49502f91d63dd7d07346c3

Git commit 50c8f07e3eebf1ff5a1d9378d77aef5df9583293 by GitHub (on behalf of Endre Fülöp) on 17/07/2026 at 18:39..
[clang][analyzer] Fix assertion failure in StdLibraryFunctionsChecker with non-integral ssize_t (#209655)

In StdLibraryFunctionsCheckers' `RangeConstraint::checkSpecificValidity`
asserted that the constrained argument type is integral. When user code
typedefs `ssize_t` to a non-integral type (e.g. `float`) even though
this violates POSIX.1-2017, which requires `ssize_t` to be a signed
integer type, the signature still matches (same canonical type) and the
assertion fires during constraint validation. Remove it and let
`validateByConstraints` gracefully reject the summary by returning
false.

Fixes #209436
https://invent.kde.org/qt/clang/llvm/-/commit/50c8f07e3eebf1ff5a1d9378d77aef5df9583293

Git commit 40c4fea67f49b841bd064624219efceab91b65e0 by GitHub (on behalf of Krisitan Erik Olsen) on 17/07/2026 at 18:44..
[SROA] Fix assertion failure when promoting self-referential load/store (#208826)

When LoadAndStorePromoter::run processes a block where a store's value
operand is defined by the load being promoted (a self-referential cycle
in unreachable code), it sets StoredValue to the load instruction. When
it then calls replaceAllUsesWith, the doRAUW assertion fires because the
replacement value contains the value being replaced.

The single-block promotion paths in promoteSingleBlockAlloca already
guard against this with a check for ReplVal == LI, replacing with poison
instead. This patch adds the same guard to the in-block load path in
LoadAndStorePromoter::run, which was missing it. Substituting poison is
correct here since this situation only arises in unreachable code.

The regression was introduced in #135609, which added the
propagateStoredValuesToLoads path in SROA that routes through
LoadAndStorePromoter::run. LoadStoreRewriter handles aggregates and is
unrelated to this path.

Fixes #204799
https://invent.kde.org/qt/clang/llvm/-/commit/40c4fea67f49b841bd064624219efceab91b65e0

Git commit 714d124d0aaf3effa3e83d01783fe0ed2cd3eea9 by GitHub (on behalf of Hongyu Chen) on 17/07/2026 at 18:47..
Revert "[RISCV][P-ext][NFC] Add cross-project tests for packed zip/unzip intrinsics" (#210401)

Reverts llvm/llvm-project#209575
https://invent.kde.org/qt/clang/llvm/-/commit/714d124d0aaf3effa3e83d01783fe0ed2cd3eea9

Git commit 93b1240309309d5c2f8f94527ff7c7bd5df359af by GitHub (on behalf of Reid Kleckner) on 17/07/2026 at 18:56..
[docs] Finish misc MyST migration (#210209)

Tracking issue: #201242
See the [migration guide] for more information.

[migration guide]:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines

This is a stacked PR based on #210208, which is the standalone rename
commit for this miscellaneous Markdown migration batch.

This was prepared with rst2myst plus LLM-assisted cleanup. LLDB man
pages are intentionally left as reStructuredText because LLDB man-page
building should not take on Markdown parser dependencies.

Unfortunately, many of these miscellaneous docs do not have working
standalone doc build targets, so I was not able to render HTML for all
of them. I think the scope is small enough that this is reviewable by
hand.
https://invent.kde.org/qt/clang/llvm/-/commit/93b1240309309d5c2f8f94527ff7c7bd5df359af

Git commit 91bb8f4ee8452d3e2bda7544556fa66dba462414 by GitHub (on behalf of Ramkumar Ramachandra) on 17/07/2026 at 19:07..
[VPlan] Introduce vputils::doesGeneratePerAllLanes (#199047)

Introduce a query for recipes that produce scalar values for all VF
lanes, returning true for non-single-scalar replicates, non-first-lane
SIVSteps, and a couple of VPInstructions.
https://invent.kde.org/qt/clang/llvm/-/commit/91bb8f4ee8452d3e2bda7544556fa66dba462414

Git commit 93bce300db95e4fbb82b1a6ef69fe125c71b77f3 by GitHub (on behalf of Ayokunle Amodu) on 17/07/2026 at 19:09..
[CIR][AMDGPU] Add support for AMDGCN log builtins (#198032)

Adds codegen support for the following AMDGCN log builtins:

- __builtin_amdgcn_logf (float)
- __builtin_amdgcn_log_bf16 (bfloat16)

These are lowered to the corresponding `llvm.amdgcn.log` intrinsic.
https://invent.kde.org/qt/clang/llvm/-/commit/93bce300db95e4fbb82b1a6ef69fe125c71b77f3

Git commit 3e55f3c56e8706fa12792b5a4de05f636bf798d0 by GitHub (on behalf of Jackson Stogel) on 17/07/2026 at 19:12..
[libc][realpath][test] Create test files/directories (#209369)

Follow-up PRs will add path validation etc to `realpath`, which will
require paths to exist in the filesystem.

This PR bumps the memory limit in `HermeticTestUtils.cpp`. The realpath
unit tests allocate quite a few strings, and since memory in hermetic
tests is never freed, the unit test quickly reaches the limit.
https://invent.kde.org/qt/clang/llvm/-/commit/3e55f3c56e8706fa12792b5a4de05f636bf798d0

Git commit 4070621c866fb4156f7c7d15039d12a4295f46c2 by GitHub (on behalf of Slava Zakharin) on 17/07/2026 at 19:13..
[flang][OpenACC] Discover type descriptors referenced by fir.create_box (#210393)

Register the IndirectGlobalAccess interface for fir.create_box so
acc-implicit-declare finds the derived-type type-descriptor global a
create_box of a record array needs on the device, as it already does
for fir.embox and fir.rebox.

Assisted-by: Cursor
https://invent.kde.org/qt/clang/llvm/-/commit/4070621c866fb4156f7c7d15039d12a4295f46c2

Git commit 5c719eeb715632b1afef6508bd6c5ac09369fc91 by GitHub (on behalf of Amr Hesham) on 17/07/2026 at 19:31..
[CIR] Implement support for builtin FMA (#210365)

Implement support for the _builtin_fma
https://invent.kde.org/qt/clang/llvm/-/commit/5c719eeb715632b1afef6508bd6c5ac09369fc91

Git commit 95cc83d45b1b8e4a560efb729bd7e1e16f0b8703 by GitHub (on behalf of Reid Kleckner) on 17/07/2026 at 19:39..
[docs] Rename AdminTasks to markdown to preserve history (#210415)

Tracking issue: #201242

Migrating this before I make changes to it. A follow-up PR will do the
migration.
https://invent.kde.org/qt/clang/llvm/-/commit/95cc83d45b1b8e4a560efb729bd7e1e16f0b8703

Git commit fb0547315ecf3f09fb6fc9122e40ff096a643eaa by GitHub (on behalf of Reid Kleckner) on 17/07/2026 at 19:44..
[docs] Rewrite AdminTasks.md as markdown (#210416)

Tracking issue: #201242
This is a stacked PR based on #210415 , which does a rename for history
preservation purposes. See the [migration guide] for more information.

[migration guide]:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines

This was prepared with rst2myst.
https://invent.kde.org/qt/clang/llvm/-/commit/fb0547315ecf3f09fb6fc9122e40ff096a643eaa

Git commit d982e0499b7f780279c435403b8249d7c3812cae by GitHub (on behalf of Diego Novillo) on 17/07/2026 at 19:56..
[HLSL] Enable frontend IR generation for SPIR-V in TypedBuffers-constructor.hlsl (#207421)

I found a stale `FIXME` marker while poking at SPIR-V resource lowering.

The test stated that SPIR-V codegen of
`llvm.spv.resource.handlefrombinding` and resource types was not
implemented. That codegen now exists in
`CommonSPIRTargetCodeGenInfo::getHLSLType`.

This change enables the test on SPIR-V and splits the tests to
distinguish DXIL and SPIRV expected IR patterns.
https://invent.kde.org/qt/clang/llvm/-/commit/d982e0499b7f780279c435403b8249d7c3812cae

Git commit 9bae0aab8098f99dff47578546eb5bd382f919d0 by GitHub (on behalf of LU-JOHN) on 17/07/2026 at 20:17..
[AMDGPU] Remove unnecessary and broken sign/zero extension in fastdiv (#210348)

Remove unnecessary and broken sign/zero-extension when using float-point
reciprocal to implement division/remainder. This change is analogous to
the change done in https://github.com/llvm/llvm-project/pull/203436 but
in AMDGPUISelLowering.cpp.

Signed-off-by: John Lu <[email protected]>
https://invent.kde.org/qt/clang/llvm/-/commit/9bae0aab8098f99dff47578546eb5bd382f919d0

Git commit dc3b1ed3ccd10995b26fa5278cb80c45419f9457 by GitHub (on behalf of Matt Arsenault) on 17/07/2026 at 20:21..
TableGen: Deterministically order predicate groups by calling convention (#210409)
https://invent.kde.org/qt/clang/llvm/-/commit/dc3b1ed3ccd10995b26fa5278cb80c45419f9457

Git commit 6ff0ebea015e3ed984dfff941e7d8a48e4810784 by GitHub (on behalf of Jonas Devlieghere) on 17/07/2026 at 20:25..
[lldb] Collect the executable, symbol file, and core in diagnostics (#210391)

The diagnostics bundle already gathers logs, statistics, and a snapshot
of the first triage commands, but sometimes the binaries are required to
reproduce an issue. Collect the main executable, its symbol file, and
the core file into the bundle.

Gate this on a new global setting, diagnostics.collect-binaries, which
defaults to false: these files can be large and privacy sensitive, so
including them is opt-in.

Assisted-by: Claude
https://invent.kde.org/qt/clang/llvm/-/commit/6ff0ebea015e3ed984dfff941e7d8a48e4810784

Git commit 977eced054d9de031423dee9493addd4e1fd5eaf by GitHub (on behalf of Jonas Devlieghere) on 17/07/2026 at 20:25..
[lldb] Truncate an over-wide symbol address in the IR interpreter (#210372)

IRInterpreter::ResolveConstantValue built a pointer-width APInt directly
from the address returned by FindSymbol. That address can be wider than
a target pointer, because lldb records extra information in the high
bits on some targets, such as the code/memory address-space tag on
WebAssembly.

A 32-bit pointer then cannot hold the tagged address and the APInt
constructor asserts, aborting the debugger when a function-valued
expression is evaluated (for example `expr main`).

Truncate to the pointer width instead of asserting, matching the idiom
already used in DWARFExpression. On targets whose addresses fit in a
pointer this is a no-op.
https://invent.kde.org/qt/clang/llvm/-/commit/977eced054d9de031423dee9493addd4e1fd5eaf

Git commit 4e0dbfe489dcc0b057303047608cd2a909602a14 by GitHub (on behalf of Aleksandr Popov) on 17/07/2026 at 20:35..
[SCEV][NFC] Precommit test for MatchRangeCheckIdiom tightening (#210386)
https://invent.kde.org/qt/clang/llvm/-/commit/4e0dbfe489dcc0b057303047608cd2a909602a14

Git commit 0e3852f73ab75639b76bad2c8a735d46241768f3 by GitHub (on behalf of Patryk Stefanski) on 17/07/2026 at 20:39..
[clang][sema] Fix crash on decomposition decl missing initializer (#210151)

ActOnUninitializedDecl dereferenced the std::optional<Token> from
Lexer::findNextToken() unconditionally when diagnosing a structured
binding with no initializer. Guard the optional and fall back to the
declaration's location.
https://invent.kde.org/qt/clang/llvm/-/commit/0e3852f73ab75639b76bad2c8a735d46241768f3

Git commit 82134c708f7ec224d86e2096d9b53c76640a490f by GitHub (on behalf of Akshay K) on 17/07/2026 at 20:51..
[CIR] Terminate conditional regions after creation; fix glvalue conditional with a throw arm (#210384)

Follow-up to #208850: @andykaylor's comments about
`CIRGenFunction::emitConditionalBlocks` also have a similar
insertion-point problem.

The PR addresses the two related problems found while looking into the
conditional branch emission path:

**1. Terminate conditional regions after creation instead of patching
yields**
`CIRGenFunction::emitConditionalBlocks` still had the save-and-patch
insertion-point machinery removed from the scalar path in #208850. The
path is unreachable, and its guard is saved only after
`cir.unreachable`, where a patched yield would generate the dead code.
The machinery is removed; regions are closed with
`terminateStructuredRegionBody` after creation.

The aggregate emitter had the reverse problem: an unconditional
cir.yield after each arm lands in the dead block a throw leaves behind
and keeps it in the final CIR:

```
struct test_s { int x; int y; };
void test_throw(bool flag) {
  test_s a = flag ? throw 0 : test_s{1, 2};
}
mlir
cir.if %2 {
  ...
  cir.throw %3 : !cir.ptr<!s32i>, @_ZTIi
  cir.unreachable
^bb1:  // no predecessors      <-- dead block kept alive by the yield
  cir.yield
} else {
  ...
}
```
The explicit yields are removed; `emitIfOnBoolExpr` already terminates
each region, adding a yield only where one is missing. Tests pin the
dead block's absence with CIR-NEXT after `cir.unreachable`.

**2. Fix glvalue conditionals with a throw arm using a region-local
pointer**

```
int &ref_cond(bool c, int &x) { return c ? x : throw 0; }
// error: operand #0 does not dominate this use
// fatal error: CIR module verification error
```
With one arm throwing, `emitConditionalOperatorLValue` returned the
surviving arm's LValue directly, valid in OG CodeGen's flat CFG, invalid
in CIR where the pointer is materialized inside the ternary's region:

```
%4 = cir.ternary(%3, true {
  %8 = cir.load %1 ...          // pointer loaded inside the region
  cir.yield %8 : !cir.ptr<!s32i>
}, false { ... cir.unreachable })
cir.store %8, %2 ...            // region-local %8 used outside the region
```

Existing tests missed it because a local's pointer is a function-entry
`alloca`, so dominance held by accident. The fix addresses the result
through the ternary's result value, which the yield carries out. New
tests cover a reference parameter, assignment via the conditional, and
member access, all of which previously failed verification.

Assisted-by: Cursor/Codex
https://invent.kde.org/qt/clang/llvm/-/commit/82134c708f7ec224d86e2096d9b53c76640a490f

Git commit ea863cb2dec8e0f040dfe22a52d3b537e4a25c29 by GitHub (on behalf of Arthur Eubanks) on 17/07/2026 at 20:54..
[DAGCombiner] Fix APInt truncation assertion (#209914)

getConstant() would create an APInt with ImplicitTrunc = false, but the
constant here can really be anything.

Fixes #209884.
https://invent.kde.org/qt/clang/llvm/-/commit/ea863cb2dec8e0f040dfe22a52d3b537e4a25c29

Git commit 1e37b629fbd06d922ac1216cf20114ea4ce1c88d by GitHub (on behalf of Aiden Grossman) on 17/07/2026 at 20:55..
[lit] Delete the external shell (#209571)

This was deprecated in LLVM 23 and slated for removal in LLVM 24. Now
that we have branched and everything has been updated to not set
execute_external, we can remove it.
https://invent.kde.org/qt/clang/llvm/-/commit/1e37b629fbd06d922ac1216cf20114ea4ce1c88d

Git commit 466503dcf2ae2e43126c1a6d8a5b204883d5b0c1 by GitHub (on behalf of Logan) on 17/07/2026 at 21:07..
X86: Add pattern for optimized BLSIC IR form (#209814)

Add DAG pattern to recognize the optimized IR form of BLSIC: (xor (and
x, -x), -1)

Fixes #209718 - matches the IR form produced after InstCombine
optimizations

Added tests for both 32-bit and 64-bit BLSIC patterns

Assisted by: Claude Code, helped me understand
pattern-matching/intrinsics, and some file structure. As well as how
testing for LLVM works.
https://invent.kde.org/qt/clang/llvm/-/commit/466503dcf2ae2e43126c1a6d8a5b204883d5b0c1

Git commit f97dcd05eb4be690dcfd39de9f6de937d5acfa46 by GitHub (on behalf of stephenduong1004) on 17/07/2026 at 21:11..
[llvm-libtool-darwin] Ensure filelist buffer is null-terminated (#205115)

[llvm-libtool-darwin] Ensure filelist buffer is null-terminated

In llvm-libtool-darwin.cpp, `MemoryBuffer::getFileOrSTDIN` was
previously called to load the filelist with `RequiresNullTerminator` set
to `false`. However, the retrieved buffer is subsequently passed to
`llvm::line_iterator`.

Since `llvm::line_iterator` explicitly requires its underlying buffer to
be null-terminated, omitting this requirement can result in an
out-of-bounds read/buffer overrun when parsing the file list.

This change fixes the issue by requesting a null-terminated buffer
(`RequiresNullTerminator=true`).

Co-authored-by: Alexander Shaposhnikov <[email protected]>
https://invent.kde.org/qt/clang/llvm/-/commit/f97dcd05eb4be690dcfd39de9f6de937d5acfa46

Git commit 986cdd8618e3e105bde1d52e7d8888325a7c87b1 by GitHub (on behalf of Florian Hahn) on 17/07/2026 at 21:12..
[VPlan] Move EVL-based transforms to VPlanEVLTransforms.cpp (NFC) (#209883)

VPlanTransforms.cpp has become quite big and is one of the top 20 most
expensive files in terms of compile-time.


https://llvm-compile-time-tracker.com/compare_clang.php?from=b8ba3c2b72cb53268129bbecfeb4ba7ec5b8d831&to=96a722a0ace661626d071166635728def97f6820&stat=instructions%3Au

Split off the mostly self-contained EVL related transforms and move them
to a new VPlanEVLTransforms.cpp.

This moves simplifyKnownEVL, optimizeEVLMasks, addExplicitVectorLength,
convertToVariableLengthStep and convertEVLExitCond together with their
EVL-specific static helpers.

Shared helpers used by the moved code (isDeadRecipe,
collectUsersRecursively, recursivelyDeleteDeadRecipes,
getOpcodeOrIntrinsicID and tryToFoldLiveIns, pullOutPermutations) are
promoted to vputils.

PR: https://github.com/llvm/llvm-project/pull/209883
https://invent.kde.org/qt/clang/llvm/-/commit/986cdd8618e3e105bde1d52e7d8888325a7c87b1

Git commit a12cbbcc94a80f54714aaa253f8838fcc9ab4aae by GitHub (on behalf of Jan Korous) on 17/07/2026 at 21:14..
[SSAF] Add EntitySourceLocationExtractor (#210201)

Walks every entity-producing decl in the TU and emits
SourceLocationRecord(s) per entity-kind anchor:

* Identifier-bearing decls (FunctionDecl/VarDecl/FieldDecl/ RecordDecl):
Decl::getLocation().
* Synthetic function return-slot entity:
FD->getReturnTypeSourceRange().getBegin().
* ParmVarDecl (named or unnamed): P->getTypeSpecStartLoc().

Skips compiler-synthesized implicits and builtins via the getEntityName
gate, system-header decls via SourceManager, and silently drops records
whose location is invalid or whose file path cannot be canonicalized via
real_path.

Assisted-By: Claude Opus 4.7
https://invent.kde.org/qt/clang/llvm/-/commit/a12cbbcc94a80f54714aaa253f8838fcc9ab4aae

Git commit 284c1a166af4c7deab55c7de2ee1bd480d44e9ff by GitHub (on behalf of David Mentler) on 17/07/2026 at 21:17..
[LLDB] Enable SBTypeSynthetic manipulation for SBValue instances (#209056)

Allow manipulating the scripted synthetic children frontend selection
process for individual `SBValue` instances.

The motivating use-case is supporting custom data structures, type
erasure systems, and facilitating debugging handle based C APIs. Below
is an example of such a use-case of an anonymized 3rd party C library:
```C
using ErrorCode = int;
using Handle = void*;

using FooHandle = Handle;
using BarHandle = Handle;

struct ArrayOfHandles {
  int size;
  Handle* data;
};

struct AllHandles {
  ArrayOfHandles foos; 
  ArrayOfHandles bars;
};

ErrorCode GetAllHandles(AllHandles* into);
```

The current LLDB feature-set allows attaching a synthetic children
provider to `AllHandles`, but the scripted frontend has no chance to
select an appropriate alternative frontend implementation class for
`foos` and `bars` based on type information it is aware of.
https://invent.kde.org/qt/clang/llvm/-/commit/284c1a166af4c7deab55c7de2ee1bd480d44e9ff

Git commit 9eb2dc0930ac75494e71b16739c859fe338a3f0f by GitHub (on behalf of Aiden Grossman) on 17/07/2026 at 21:18..
Revert "[lit] Delete the external shell" (#210433)

Reverts llvm/llvm-project#209571

Breaks some buildbots:
1.
https://lab.llvm.org/buildbot/#/builders/232/builds/3690/steps/11/logs/stdio
2. https://lab.llvm.org/buildbot/#/builders/222/builds/11180
https://invent.kde.org/qt/clang/llvm/-/commit/9eb2dc0930ac75494e71b16739c859fe338a3f0f

Git commit 965fa410dad7294cc1c1a9632ff94558de6dfa40 by GitHub (on behalf of Sharjeel Khan) on 17/07/2026 at 21:19..
[LFI][AArch64] Fix Segfault due to infinite recursion in LFI rewriter (#210267)

When emitting a deferred LR guard, if debug info is enabled, the
emission of the guard instruction can trigger temporary labels (e.g. for
DWARF line entries), which recursively calls onLabel. Since
DeferredLRGuard was only set to false after emission, the nested call
would re-emit the guard, causing infinite recursion which leads to a
SegFault due to stack overflow. This was detected compiling
ubsan_minimal_handlers.cpp in compiler-rt. I fixed it by using the
existing recursion guard (Guard).
https://invent.kde.org/qt/clang/llvm/-/commit/965fa410dad7294cc1c1a9632ff94558de6dfa40

Git commit 2120490a54645f9a4390605adec5509243641d29 by GitHub (on behalf of Jonas Devlieghere) on 17/07/2026 at 21:19..
[lldb] Add an artifact provider mechanism to Diagnostics (#210417)

Add a hook that lets a subsystem contribute a file to the diagnostics
bundle, without breaking layering and making Core depend on it. A plugin
registers an ArtifactProvider callback and a file name via AddArtifactProvider.
Providers run when a bundle is collected, and each one that yields
content is written into the bundle and recorded in the report's
attachments.

This restores, in a simpler form, the collection point that the removed
Diagnostics callback mechanism offered. The motivating consumer is the
downstream Swift health check, which registers a provider to write its
"swift-healthcheck.log" into the bundle. Unlike the old callback, a
provider does not open or write its own file: it just returns the
contents as a string and Diagnostics handles the rest.
https://invent.kde.org/qt/clang/llvm/-/commit/2120490a54645f9a4390605adec5509243641d29

Git commit d592aa5a10f44164cd403257270802eb2a4b123a by GitHub (on behalf of Tony Guillot) on 17/07/2026 at 21:23..
[Clang] Fixed auto parsing regression with brace initialization (#210347)

The PR #208552 has introduced a regression where brace initialization
was not taken into account `auto foo{12}`. It was also breaking
`dcl.type.general` p2 rules, which is also now tested.
https://invent.kde.org/qt/clang/llvm/-/commit/d592aa5a10f44164cd403257270802eb2a4b123a

Git commit 32221d9ff8f4772972193ebf7b8ba4974cd8458f by GitHub (on behalf of David Green) on 17/07/2026 at 21:26..
[AArch64] Add lowering for fixed-vector bf16 masked gather/scatter. (#210273)

Similar to #208744, this makes sure that bf16 masked gather and scatter
work with fixed-length sve enabled. Without +bf16 the operations are
currently expanded pre-isel, but that will not be fixed in this patch as
it is a larger change and this patch is intended to be ported to the
branch.
https://invent.kde.org/qt/clang/llvm/-/commit/32221d9ff8f4772972193ebf7b8ba4974cd8458f

Git commit b4a444ad635af70fe32f58d46fe0c08221fbcf5a by GitHub (on behalf of Jackson Stogel) on 17/07/2026 at 21:51..
[libc][realpath] Support relative paths (#209374)

Updates realpath to call the `getcwd` linux syscall wrapper to resolve
cwd-relative queries.
https://invent.kde.org/qt/clang/llvm/-/commit/b4a444ad635af70fe32f58d46fe0c08221fbcf5a

Git commit 850d1fde46d1363e1fa0e16665239edfe2d1b9e3 by jtstogel on 17/07/2026 at 21:54..
[libc][realpath] Validate path components.

This PR updates `realpath` to validate paths and return `ENOTDIR` or `ENOENT` according to https://pubs.opengroup.org/onlinepubs/9699919799/functions/realpath.html.

This PR also bumps the memory limit in `HermeticTestUtils.cpp`. The realpath unit tests allocate quite a few strings. Since memory in hermetic tests is never free'd, the unit test quickly reaches the limit.
https://invent.kde.org/qt/clang/llvm/-/commit/850d1fde46d1363e1fa0e16665239edfe2d1b9e3

Git commit 091bc586dab0c655aeed973c220e7ed943bc9e8f by jtstogel on 17/07/2026 at 21:55..
[libc][realpath] Follow symlinks
https://invent.kde.org/qt/clang/llvm/-/commit/091bc586dab0c655aeed973c220e7ed943bc9e8f
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.