[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/users/jroelofs/spr/main.libunwindaarch64-support-cfi_set_ra_state'.
Changed from f79046793cea61a3ad7e3977fccba13e573dce2c to 19aa2b371f85b6624785f7bad14c230503892443
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 83ba8addf60668a971453eed207f9bfdaa379f97 by GitHub (on behalf of Andrew Haberlandt) on 20/07/2026 at 17:18..
[compiler-rt] Move sanitizer ignorelists to sanitizer-ignorelists target (#200518)
This adds a `sanitizer-ignorelists` target to compiler-rt, allowing the
ignorelists to be built independently of the sanitizer runtimes. The
ignorelists are still built by default, but this change is not quite
NFC: when any of the sanitizers are built, all of the ignorelists will
be included (rather than the individual runtime ignorelists being built
with their respective runtimes).
For _why_ we want to be able to build these independently of the
runtimes, see
https://github.com/llvm/llvm-project/pull/195690#issuecomment-4384573223
I did not move the dfsan abilist to this new target because it is not as
straightforward as a copying a static file.
Assisted-by: Claude
rdar://175962064
https://invent.kde.org/qt/clang/llvm-project/-/commit/83ba8addf60668a971453eed207f9bfdaa379f97
Git commit d2e70aa7e546f7f2bbcf398b42151e464ce1098e by GitHub (on behalf of Alex Langford) on 20/07/2026 at 17:29..
[lldb] Remove unused method DynamicLoaderDarwin::ImageInfo::FindSegment (#210155)
This method is unused.
https://invent.kde.org/qt/clang/llvm-project/-/commit/d2e70aa7e546f7f2bbcf398b42151e464ce1098e
Git commit b559a53427f926a603a1755f60d98e06e2b7e1d2 by GitHub (on behalf of A. Jiang) on 20/07/2026 at 17:29..
[libc++][docs] Avoid talking about other implementations on DR status (#210637)
Standard library implementations consistently treat (or will
consistently treat) some LWG papers as Defect Reports that are also
applied to old modes, despite that they are not officially listed as
Defect Reports in WG21 meeting minutes. We used to say "other
implementations (namely MSVC STL and libstdc++) will do the same" for
some of them.
However, such sentences will become outdated soon when other
implementations actually do so. It is possibly better to avoid saying
so, which potentially requires synchronizing our documentation with
other implementations.
https://invent.kde.org/qt/clang/llvm-project/-/commit/b559a53427f926a603a1755f60d98e06e2b7e1d2
Git commit eb7677457c1611c02a6362d9eae043987c02ea25 by GitHub (on behalf of Prabhu Rajasekaran) on 20/07/2026 at 17:31..
[llvm-readobj] Print all callgraph sections (#198929)
Ensure that `llvm-readobj` / `llvm-readelf` processes and dumps all
SHT_LLVM_CALL_GRAPH sections present in an object file, rather
than just the first one.
**Motivation:**
Consider this `foo.s` file
```
.pushsection .text, "axG", %progbits, foo
.globl foo
foo:
ret
.pushsection .llvm.callgraph, "?", %llvm_call_graph
.byte 0, 0
.dc.a foo
.quad 0
.popsection
.popsection
.pushsection .text, "axG", %progbits, bar
.globl foo
bar:
ret
.pushsection .llvm.callgraph, "?", %llvm_call_graph
.byte 0, 0
.dc.a bar
.quad 0
.popsection
.popsection
```
`clang -c foo.s && llvm-readelf --elf-output-style=JSON --pretty-print
--call-graph-info foo.o` on that shows that there is only one record
reported because the current implementation just looked at the first
SHT_LLVM_CALL_GRAPH section and then ignored all others. This patch will
address this gap by iterating over all the SHT_LLVM_CALL_GRAPH sections.
https://invent.kde.org/qt/clang/llvm-project/-/commit/eb7677457c1611c02a6362d9eae043987c02ea25
Git commit c5204abb4ee22b720528b8c9263d9bf1a5b10d34 by GitHub (on behalf of Gang Chen) on 20/07/2026 at 17:34..
[llvm-utils][Tools] fix mir-check filter to handle scattered check-lines (#209226)
When filtered output was not consecutive, the auto-update script was not
able to generate working checklines.
https://invent.kde.org/qt/clang/llvm-project/-/commit/c5204abb4ee22b720528b8c9263d9bf1a5b10d34
Git commit 3ec4c1783b7dd490d68594e4e46fe309c5fbfbeb by GitHub (on behalf of Daniil Kovalev) on 20/07/2026 at 17:37..
[PAC][llvm-readobj][ELF][AArch64] Define R_AARCH64_AUTH_TLSDESC_CALL reloc (#199503)
See specification https://github.com/ARM-software/abi-aa/pull/395
https://invent.kde.org/qt/clang/llvm-project/-/commit/3ec4c1783b7dd490d68594e4e46fe309c5fbfbeb
Git commit c4026e4350fd4d70692f205aff8764055a8b4ce1 by GitHub (on behalf of Zachary Yedidia) on 20/07/2026 at 17:40..
[LFI][libunwind] Omit unsuppported stg/za instructions for LFI target (#209392)
Under the LFI target the SVE `za` are not currently supported, and
neither is the `stg` instruction. When included in an LFI program they
cause verification failures due to being unsupported instructions. This
patch omits them from compilation when targeting LFI.
https://invent.kde.org/qt/clang/llvm-project/-/commit/c4026e4350fd4d70692f205aff8764055a8b4ce1
Git commit 33b9e91b76073bdce71951199c7ed0efcf41d14c by GitHub (on behalf of Justin Fargnoli) on 20/07/2026 at 17:42..
[LoopUnroll] Add `prepare-for-lto` pass option (#192153)
Expose `UnrollCostEstimator`'s `PrepareForLTO` flag as a pass option for
`LoopUnrollPass` and `LoopFullUnrollPass`. When enabled, loops
containing calls that may be inlined during the LTO post-link phase are
left rolled in the pre-link phase, deferring the decision until LTO
post-link inlining has completed.
https://invent.kde.org/qt/clang/llvm-project/-/commit/33b9e91b76073bdce71951199c7ed0efcf41d14c
Git commit a6b49df4454ae85b8fc500d549d4b614f4c6d535 by GitHub (on behalf of Fangrui Song) on 20/07/2026 at 17:45..
[ELF] Apply version script patterns to name-versioned definitions by node (#208882)
Like GNU ld, a definition whose name specifies a version (foo@@v1 or
foo@v1) should be governed solely by its own version node, with global
patterns checked before local ones and no exact-over-wildcard
precedence. Also fix #202259 (`local: foo*` does not localize defined
`foo@@v1`)
```
old new (= GNU ld)
symbol foo@@v1
v1 { local: foo; } (own node) localized localized
v2 { local: foo; } (other node) localized exported
v1 { local: foo*; } (own node) exported localized
v1 { local: *; } (own node) exported localized
v1 { global: foo*; local: foo; } localized exported
symbol foo3@v1
v1 { global: foo3*; local: foo3; } localized exported
v1 { global: *; local: foo3*; } localized exported
```
assignExactVersion now skips name-versioned symbols, and the
synthesized "pat@v1" patterns and includeNonDefault parameters are
removed. Instead, parseSymbolVersion matches the version-less name
(demangled for extern "C++" patterns) against the symbol's own node,
localizing the symbol if a local: pattern matches and no global:
pattern does. An exact pattern still performs a "pat@v1" lookup so that
a pattern matching only foo@v1 is not reported as undefined. "attempt
to reassign" diagnostics no longer apply to name-versioned symbols.
https://invent.kde.org/qt/clang/llvm-project/-/commit/a6b49df4454ae85b8fc500d549d4b614f4c6d535
Git commit a04f87fdd9b59c6089bf731c669c6f149208363c by GitHub (on behalf of Haowei) on 20/07/2026 at 17:47..
Reapply "Skipping host target exports during cross-compilation" (#210… (#210496)
This reverts commit 42eb7db188f23625872b6f1d722979a3100d170e. This
reland 3fbb037d03e7ff1ef1cd9156363e895af7caaf98 (#209922).
Under CMake 4+, calling add_library(... SHARED IMPORTED) on a target
platform that lacks dynamic linking support triggers a fatal error. This
becomes an issue when building LLVM and runtimes for baremetal targets
like armv6m-none-eabi. This patch adds the option
"LLVM_OMIT_EXPORTS_FROM_CONFIG" in LLVM. When used in sub builds like
LLVM runtimes, it makes CMake to skip including the LLVM and Clang
exports. This mitigates the CMake 4 errors on baremetal runtimes.
42eb7db188f23625872b6f1d722979a3100d170e originally
apply this flag on all runtimes build and causing issues on runtimes
like intel-sycl-gpu, amdgpu-offload-ubuntu-22-cmake-build-only.
This PR only set this flag when the target platform lacks shared library
support.
https://invent.kde.org/qt/clang/llvm-project/-/commit/a04f87fdd9b59c6089bf731c669c6f149208363c
Git commit 1020bbfc6e9e93f304ddb1329e2fa58ef26831c5 by GitHub (on behalf of Matt Arsenault) on 20/07/2026 at 17:50..
lld: Migrate amdgpu tests to use subarch triples (#210114)
https://invent.kde.org/qt/clang/llvm-project/-/commit/1020bbfc6e9e93f304ddb1329e2fa58ef26831c5
Git commit 7b9ab3a48198aa6bb2130e4302b0dcb66e980f90 by GitHub (on behalf of Arthur Eubanks) on 20/07/2026 at 17:52..
[gn build] Port 2a33792a2ec1 (#210772)
https://invent.kde.org/qt/clang/llvm-project/-/commit/7b9ab3a48198aa6bb2130e4302b0dcb66e980f90
Git commit 55e5cc2ab21be2ef375e5235a961def0e27a2e1a by GitHub (on behalf of Matt Arsenault) on 20/07/2026 at 18:01..
AMDGPU: Migrate more tests to amdgpu triples (#210113)
These were missed in previous conversions for whatever reason.
Some are new tests added after I did the bulk migration, some
are special cases.
https://invent.kde.org/qt/clang/llvm-project/-/commit/55e5cc2ab21be2ef375e5235a961def0e27a2e1a
Git commit 6665357608334ed956517d8aa3df472b0553e50d by GitHub (on behalf of Matt Arsenault) on 20/07/2026 at 18:02..
RuntimeLibcalls: Rename RuntimeLibcallPredicate to RuntimeLibcallAvailability (#210648)
Rename to avoid confusing partial name collisions in future changes.
Co-authored-by: Claude (Claude-Opus-4.8) <[email protected]>
https://invent.kde.org/qt/clang/llvm-project/-/commit/6665357608334ed956517d8aa3df472b0553e50d
Git commit ef65f39f4fa65841c99256d947b7f1ff69baeb42 by Jon Roelofs on 20/07/2026 at 18:02..
[𝘀𝗽𝗿] changes introduced through rebase
Created using spr 1.3.7
[skip ci]
https://invent.kde.org/qt/clang/llvm-project/-/commit/ef65f39f4fa65841c99256d947b7f1ff69baeb42
Git commit f010423d3dfac774c6157686b6f14fb8d357c715 by GitHub (on behalf of Christopher Ferris) on 20/07/2026 at 18:08..
[scudo] Remove dead code and other small cleanups. (#210454)
Some dead code from the error info refactor is still around, so delete
that. Also cleanup spelling and spacing.
Modified the tests to use TestOnly functions so it's clear what is
actually used.
https://invent.kde.org/qt/clang/llvm-project/-/commit/f010423d3dfac774c6157686b6f14fb8d357c715
Git commit dd0b48c7e7988fed5f08e93ea3c291ca8d5f99a1 by GitHub (on behalf of Matsu) on 20/07/2026 at 18:16..
[OpenACC] Support dynamic worker-private shared memory (#210770)
Use the maximum ThreadY width when the runtime worker count prevents
exact static sizing.
https://invent.kde.org/qt/clang/llvm-project/-/commit/dd0b48c7e7988fed5f08e93ea3c291ca8d5f99a1
Git commit a01ff35d0375d8a2a558c44ef73583da58dfa505 by GitHub (on behalf of Jon Roelofs) on 20/07/2026 at 18:17..
[libunwind] Fix exposure of UNW_AARCH64_RA_SIGN_STATE through _Unwind_GetGR (#209947)
The pseudo register was previously hacked in under kRegisterIsUndefined, leaving it in a state that was only accessible from within the unwinder itself.
To fix this, allowing external access to the state (and therefore tests!), we invent a new register location kRegisterIsPseudo to record the additional state that the register has been defined by a .cfi_negate_ra_state opcode having been executed.
https://invent.kde.org/qt/clang/llvm-project/-/commit/a01ff35d0375d8a2a558c44ef73583da58dfa505
Git commit 1df8a2c9aac26211fb931f59d2f0489ebd506ad1 by GitHub (on behalf of Nico Weber) on 20/07/2026 at 18:18..
[gn] port 83ba8addf6 (sanitizer_ignorelists) (#210776)
https://invent.kde.org/qt/clang/llvm-project/-/commit/1df8a2c9aac26211fb931f59d2f0489ebd506ad1
Git commit 094a7278f66691c8e0d910c803966f5c2e1f6ce5 by GitHub (on behalf of LU-JOHN) on 20/07/2026 at 18:20..
[AMDGPU] Calculate div/rem with frcp more efficiently (#210684)
Integer division q = a/b can be implemented by fp reciprocal with:
fq = fa * recip(fb)
fq is truncated to produce q. Due to fp rounding and reciprocal accuracy
issues fq can be too small and truncation can produce a value too small
by one.
If abs(a)<=0x400000, this underestimate can be guarded more efficiently
by calculating:
fq=fa+1ulp/b
If abs(a)<=0x400000, adding 1 ulp will increase a by at most 0.5, so the
calculated q will be the same. Adding 1ulp can be done with one integer
add.
This change is analogous to the change done in
https://github.com/llvm/llvm-project/pull/204950 but in
AMDGPUISelLowering.cpp.
Signed-off-by: John Lu <[email protected]>
https://invent.kde.org/qt/clang/llvm-project/-/commit/094a7278f66691c8e0d910c803966f5c2e1f6ce5
Git commit 932a9e52c6a1c44aac251c0150d26a045fb0a153 by Jon Roelofs on 20/07/2026 at 18:21..
[𝘀𝗽𝗿] changes introduced through rebase
Created using spr 1.3.7
[skip ci]
https://invent.kde.org/qt/clang/llvm-project/-/commit/932a9e52c6a1c44aac251c0150d26a045fb0a153
Git commit a8fd45114023f0cb332b2c0fcc5a14f4c4de8182 by GitHub (on behalf of Justin Lebar) on 20/07/2026 at 18:27..
[LSV] Don't vectorize load chains across ordered atomics (#208631)
When the LoadStoreVectorizer finds a chain of loads to merge into a
single vectorized load, it hoists all of the constituent loads up to the
location of the first load in the chain.
This is obviously not safe if there are any may-alias stores in the
middle of the chain. But it's *also* not safe if there are `acquire`
*loads* in the middle of the chain.
There's a similar problem with stores. A chain of stores is vectorized
by merging them all into the final store in the chain. This is not safe
if there is an intervening `release` store.
https://invent.kde.org/qt/clang/llvm-project/-/commit/a8fd45114023f0cb332b2c0fcc5a14f4c4de8182
Git commit 59e677629e4398428dbefecba8062fb89955f1f3 by GitHub (on behalf of Jon Roelofs) on 20/07/2026 at 18:31..
[llvm][AArch64] Refactor emitPACCFI into decoratePACWithCFI/emitAUTCFI. NFC (#209948)
https://invent.kde.org/qt/clang/llvm-project/-/commit/59e677629e4398428dbefecba8062fb89955f1f3
Git commit 365a64ac9353032b4de330ac6f6ce48bd1b53846 by GitHub (on behalf of Vicky Nguyen) on 20/07/2026 at 18:31..
[CIR][AArch64] Upstream store (vst1_*/vst1q_*) NEON builtins (#209347)
Related to https://github.com/llvm/llvm-project/issues/185382
CIR lowering for store intrinsics (`vst1_*`/`vst1q_*`)
(https://arm-software.github.io/acle/neon_intrinsics/advsimd.html#store)
Port tests:
- `clang/test/CodeGen/AArch64/neon-intrinsics.c`
- `clang/test/CodeGen/AArch64/neon-ldst-one.c`
- `clang/test/CodeGen/AArch64/poly64.c`
- `clang/test/CodeGen/arm-neon-vst.c`
to `clang/test/CodeGen/AArch64/neon/store.c`
https://invent.kde.org/qt/clang/llvm-project/-/commit/365a64ac9353032b4de330ac6f6ce48bd1b53846
Git commit 19aa2b371f85b6624785f7bad14c230503892443 by Jon Roelofs on 20/07/2026 at 18:32..
[𝘀𝗽𝗿] changes introduced through rebase
Created using spr 1.3.7
[skip ci]
https://invent.kde.org/qt/clang/llvm-project/-/commit/19aa2b371f85b6624785f7bad14c230503892443