[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/steakhal/ssaf/virtual-method-override-families'.
Changed from 262c9142606230e7c2a04e3770ba46df85910f47 to 0d85b0d0354241f3665728e24f90b9c3ceb4b629
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 69685bb9ce2dc1976b9f4f852caaebdfd98485d1 by GitHub (on behalf of Louis Dionne) on 31/07/2026 at 17:20..
[libc++] Actually partially populate the container in a benchmark (#213146)

The "partially populated" variant of assignment was a copy-paste of the
"into cleared container" assignment.
https://invent.kde.org/qt/clang/llvm/-/commit/69685bb9ce2dc1976b9f4f852caaebdfd98485d1

Git commit dac66ca4776b18304249bb3a37f08915e5ad1bf4 by GitHub (on behalf of Louis Dionne) on 31/07/2026 at 17:21..
[libc++] Fix dangling reference in the associative container benchmarks (#213139)

Two insert benchmarks were registered with lambdas capturing insert_iter_iter_bench
by reference, unlike every other registration in this file, which captures by value.

RegisterBenchmark() stores the lambda by value and only invokes it from
RunSpecifiedBenchmarks(), which happens long after associative_container_benchmarks()
has returned, creating a dangling reference.
https://invent.kde.org/qt/clang/llvm/-/commit/dac66ca4776b18304249bb3a37f08915e5ad1bf4

Git commit 194d7d819f3ccf15c836323bc0efa34920045c0d by GitHub (on behalf of Timm Baeder) on 31/07/2026 at 17:21..
[llvm] Include ArrayRef.h in GenericCycleInfo.h (#213267)

Try to fix the llvm-x86_64-debian-dylib builder, which has been broken
for a while with:

```
CCACHE_CPP2=yes CCACHE_HASHDIR=yes CCACHE_SLOPPINESS=pch_defines,time_macros /usr/bin/ccache /usr/bin/clang++ -DLLVM_EXPORTS -D_DEBUG -D_GLIBCXX_ASSERTIONS -D_GLIBCXX_USE_CXX11_ABI=1 -D_GNU_SOURCE -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_EXTENSIVE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/b/1/llvm-x86_64-debian-dylib/build/lib/CodeGen -I/b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/lib/CodeGen -I/b/1/llvm-x86_64-debian-dylib/build/include -I/b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/include -fPIC -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wno-pass-failed -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -O3 -DNDEBUG -UNDEBUG -fno-exceptions -funwind-tables -fno-rtti -std=c++17 -MD -MT lib/CodeGen/CMakeFiles/LLVMCodeGen.dir/CodeGenPrepare.cpp.o -MF lib/CodeGen/CMakeFiles/LLVMCodeGen.dir/CodeGenPrepare.cpp.o.d -o lib/CodeGen/CMakeFiles/LLVMCodeGen.dir/CodeGenPrepare.cpp.o -c /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/lib/CodeGen/CodeGenPrepare.cpp
In file included from /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/lib/CodeGen/CodeGenPrepare.cpp:53:
In file included from /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/include/llvm/IR/CycleInfo.h:18:
/b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/include/llvm/ADT/GenericCycleInfo.h:231:33: error: member reference base type 'ArrayRef' is not a structure or union
    return ArrayRef(BlockLayout).slice(Cyc.EntryBegin, Cyc.EntrySize);
           ~~~~~~~~~~~~~~~~~~~~~^~~~~~
```

see e.g.
https://lab.llvm.org/buildbot/#/builders/60/builds/5422/steps/5/logs/stdio


I'm not sure if this will help or not, I can't reproduce this locally
and nobody else seems to have the same problem(?).
https://invent.kde.org/qt/clang/llvm/-/commit/194d7d819f3ccf15c836323bc0efa34920045c0d

Git commit 9bc2dd1a7015b58c9c68e8174e5d2756d955c0ca by GitHub (on behalf of Louis Dionne) on 31/07/2026 at 17:21..
[libc++] Add an assertion for monotonic_buffer_resource's initial_size (#213136)

[mem.res.monotonic.buffer.ctor] requires initial_size to be greater than
zero for the two constructors that take one, but we silently accepted
zero. Add a hardening assertion for that precondition.

Fixes #213059
https://invent.kde.org/qt/clang/llvm/-/commit/9bc2dd1a7015b58c9c68e8174e5d2756d955c0ca

Git commit c433135c99fc3306ae93fa8cff9e5c00ad0ece3c by GitHub (on behalf of Louis Dionne) on 31/07/2026 at 17:25..
[libc++] Remove unused headers from <cmath> (#213114)

I believe these headers were relevant when we actually implemented
functions in `<cmath>`, but they are not anymore. Note that ::hypot in
particular is obtained from <math.h> like all the other math functions.

Co-authored-by: A. Jiang <[email protected]>
https://invent.kde.org/qt/clang/llvm/-/commit/c433135c99fc3306ae93fa8cff9e5c00ad0ece3c

Git commit 93da16b5edbd9b6b3e66199ec05012be22e3d306 by GitHub (on behalf of Vicky Nguyen) on 31/07/2026 at 17:27..
[CIR][AArch64] Upstream store (vstrq_p128) NEON builtins (#212677)

Related to https://github.com/llvm/llvm-project/issues/185382

CIR lowering for store intrinsics (`vstrq_p128`)
(https://arm-software.github.io/acle/neon_intrinsics/advsimd.html#store)

Port test from `clang/test/CodeGen/AArch64/poly128.c` to
`clang/test/CodeGen/AArch64/neon/store.c`
https://invent.kde.org/qt/clang/llvm/-/commit/93da16b5edbd9b6b3e66199ec05012be22e3d306

Git commit 0aa3c9e671fd54083c8c6484fbcfa4c4e36619b6 by GitHub (on behalf of Matt Arsenault) on 31/07/2026 at 17:29..
AMDGPU: Add missing smem-prefetch-insts to gfx12.5/gfx13 feature map (#213297)

fillAMDGCNFeatureMap omitted smem-prefetch-insts for gfx125x and gfx13,
so clang wrongly rejected __builtin_amdgcn_s_prefetch_data / _inst /
s_buffer_prefetch_data.

Co-authored-by: Claude (Claude-Opus-4.8)
https://invent.kde.org/qt/clang/llvm/-/commit/0aa3c9e671fd54083c8c6484fbcfa4c4e36619b6

Git commit 4f0fdb36cc99b4920e0431e7047ff3948c8b4278 by Balazs Benics on 31/07/2026 at 17:32..
[SSAF] Extract the virtual method override relation per TU

A virtual call may dispatch to any override of its callee, so a whole-program
analysis cannot reason about a method's parameters and return value in
isolation. It needs to know which method overrides which, and which slots
that relates. Collect this per TU, so a later pass can join the related
slots into families.

JSON serialization lands separately, so the summary is not writable via
--ssaf-extract-summaries yet.

§1 of rdar://179151603
https://invent.kde.org/qt/clang/llvm/-/commit/4f0fdb36cc99b4920e0431e7047ff3948c8b4278

Git commit 0d85b0d0354241f3665728e24f90b9c3ceb4b629 by Balazs Benics on 31/07/2026 at 17:32..
[SSAF] Group virtual method slots into override families

A virtual call site can dispatch to any override, so the parameter and return
slots that occupy the same vtable slot across an override chain are
indistinguishable to a caller. Whole-program consumers therefore have to treat
them as one unit or they will reason about a slot that a call never actually
reaches.

Compute those units up front, keyed per slot, so consumers only need a map
lookup rather than their own traversal of the override relation. Overloads
occupy distinct vtable slots and stay in distinct families.

The family representative is the smallest EntityId in the class, which keeps
the result stable across runs.

§2 of rdar://179151603
https://invent.kde.org/qt/clang/llvm/-/commit/0d85b0d0354241f3665728e24f90b9c3ceb4b629
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.