[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/arsenm/amdgpu/tablegen-targetparser-feature-bitset'.
Changed from 30aafd800b8b23fcf3035082226cb8a71c584d2c to 6a519a650430acbed79cecd8bf98197661a718de
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 5aec353bd686dbca51755e772971c65ee6ae70f6 by GitHub (on behalf of Folkert de Vries) on 31/07/2026 at 11:13..
[NFC][PowerPC] add more `copysign` tests (#213236)
https://invent.kde.org/qt/clang/llvm-project/-/commit/5aec353bd686dbca51755e772971c65ee6ae70f6

Git commit 090b6569b6ed5cabfc84284542c5ce8b51735015 by GitHub (on behalf of Nikolas Klauser) on 31/07/2026 at 11:24..
[libc++] Make __has_array_cookie a variable template (#212767)

Using variable templates is slightly faster to compile and more
readable, so we might as well use them.
https://invent.kde.org/qt/clang/llvm-project/-/commit/090b6569b6ed5cabfc84284542c5ce8b51735015

Git commit e147e5b7d029651554c24ecaaa4086a7cc74e90a by GitHub (on behalf of Nikolas Klauser) on 31/07/2026 at 11:25..
[libc++] Simplify clear_padding.h a bit (#212426)
https://invent.kde.org/qt/clang/llvm-project/-/commit/e147e5b7d029651554c24ecaaa4086a7cc74e90a

Git commit 3a809f644c863a17ac665e19d7dcbf7209688d18 by GitHub (on behalf of Nikolas Klauser) on 31/07/2026 at 11:26..
[libc++abi] Add a clang-tidy config and test (#207324)

This essentially copies the `.clang-tidy` file from libc++ into
libc++abi, except that the naming conventions are updated to not add
underscores and some checks are disabled that don't pass currently. They
will be fixed in follow-ups.
https://invent.kde.org/qt/clang/llvm-project/-/commit/3a809f644c863a17ac665e19d7dcbf7209688d18

Git commit bcddf2a29177380c62481ee25362064f99ff07d3 by GitHub (on behalf of Alexey Bataev) on 31/07/2026 at 12:04..
[SLP][NFC]Add some extra tests for reductions, NFC



Reviewers: 

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

Git commit 0a1f0aafed6dfce910e18090bfd408838b9a727a by GitHub (on behalf of PushkarSingh) on 31/07/2026 at 12:06..
[clang][Analysis] Add argument accessors to clang::AnyCall (#212934)

Add APIs to `clang::AnyCall` for accessing expression-backed call
arguments.

`AnyCall` already exposes formal parameters through `parameters()`,
`param_begin()`, `param_end()`, `param_size()`, and `param_empty()`.
This adds the corresponding argument-side helpers:

- `arguments()`
- `arg_begin()`
- `arg_end()`
- `arg_size()`
- `arg_empty()`
- `getArg()`

This lets clients reuse `AnyCall` for callee/argument inspection instead
of
open-coding argument extraction.

Prequel PR to #206337
https://invent.kde.org/qt/clang/llvm-project/-/commit/0a1f0aafed6dfce910e18090bfd408838b9a727a

Git commit e44068cc129912c88dcdeae0d1b5dc5937eb1059 by GitHub (on behalf of Karim Alweheshy) on 31/07/2026 at 12:09..
[lld][MachO] Preserve class-address addends in ObjC category merging (#211431)

Mach-O category merging can encounter Swift class references as an
enclosing
metadata symbol plus a non-zero addend after LTO removes the exact
class-address alias. For example, a category can refer to a `CMf` symbol
plus
the offset of the class object within that metadata record.

`tryGetSymbolAtIsecOffset()` previously resolved such a relocation to
the
enclosing symbol and discarded the residual addend. `getClassRo()` then
read
the class layout at the wrong address. For valid Swift metadata this can
return
null; before the defensive check in the first commit the linker
dereferenced
that result and crashed, while the check alone safely skipped a category
that
could have been merged.

Preserve the class reference as a symbol and residual addend throughout:

- category grouping;
- class and metaclass RO-data lookup;
- source-language detection; and
- relocations synthesized for merged categories.

An exact symbol at the target address is still preferred. When no exact
alias
survives, retain the offset from the closest containing symbol. The
defensive
checks remain in place for genuinely incomplete or unsupported metadata.

The Swift regression now omits the exact class-address alias and points
the
category classlist directly into the enclosing metadata record, matching
the
shape observed after ThinLTO.

Testing:

- Release + assertions AArch64 LLVM/LLD build
- focused `llvm-lit` coverage for the alias-free Swift metadata and
  missing-metadata cases
- full Swift 6 application link with `-objc_category_merging`

The application result is integration evidence for correctness and
folding
coverage
https://invent.kde.org/qt/clang/llvm-project/-/commit/e44068cc129912c88dcdeae0d1b5dc5937eb1059

Git commit a6a1cb05d247f1fc4414bb6d789f390b2554eac7 by GitHub (on behalf of Sergey Semenov) on 31/07/2026 at 12:18..
[libsycl] Add missing header include to global_objects.hpp (#213020)

Fixes a build error observed on Windows.
https://invent.kde.org/qt/clang/llvm-project/-/commit/a6a1cb05d247f1fc4414bb6d789f390b2554eac7

Git commit c29bcd45ddd96c5d3ea0d5f7de051b5174966a3b by GitHub (on behalf of Charles Zablit) on 31/07/2026 at 12:27..
[lldb][Windows] Don't cut the loader helper off after 250ms (#213010)

`LoadLibraryW` runs on the debuggee with a timeout of 250ms (the
default). On a loaded machine (in CI), this timeout is reached quite
often, causing tests failures.

This patch gives both loader helpers an explicit timeout of 5s (clamped
to half the overall timeout so the two stay consistent).
https://invent.kde.org/qt/clang/llvm-project/-/commit/c29bcd45ddd96c5d3ea0d5f7de051b5174966a3b

Git commit e84daa62201acd161c6b77375eb26d0b0ac63ed2 by GitHub (on behalf of Ebuka Ezike) on 31/07/2026 at 12:29..
[lldb-dap] Migrate console and restart tests (#213019)

Migrated Tests
- TestDAP_console.py
- TestDAP_redirection_to_console.py
- TestDAP_restart.py
- TestDAP_restart_console.py
https://invent.kde.org/qt/clang/llvm-project/-/commit/e84daa62201acd161c6b77375eb26d0b0ac63ed2

Git commit b4efecb0379353d51a172209193e500b6cb2a0f2 by GitHub (on behalf of Matt Arsenault) on 31/07/2026 at 12:30..
AMDGPU: Add missing msad-insts to gfx13 frontend feature map (#213122)

fillAMDGCNFeatureMap omitted msad-insts for gfx1310/gfx13-generic, so
clang wrongly rejected __builtin_amdgcn_msad_u8 on those targets even
though the backend enables the feature (FeatureGFX9 generation,
inherited through FeatureGFX13). Add it to the gfx13 case.

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

Git commit 3f9b96996cac75b960adf84f5722afe48c20b480 by GitHub (on behalf of Zmicier Prybysh) on 31/07/2026 at 12:32..
[mlir][linalg] Support non-unit dilations in im2col decomposition (#208424)

The im2col patterns for conv_2d_nhwc_hwcf, conv_2d_nchw_fchw and
conv_2d_nhwc_fhwc avoided non-unit dilations, but the restriction
doesn't seem to be fundamental: dilation only affects the gather step,
which can fold it into its indexing map. Generalize the convolved index
expression from `oh * stride + fh` to `oh * stride + fh * dilation` and
drop the match failures.

Verified by comparing the results of a dilated convolution lowered
directly to loops against the im2col decomposition with mlir-runner.

Assisted-By: Claude Code (for generating tests).
https://invent.kde.org/qt/clang/llvm-project/-/commit/3f9b96996cac75b960adf84f5722afe48c20b480

Git commit 2f30bd168ccb47a82a25faba92cae4d6d0b47f0d by GitHub (on behalf of Michael G. Kazakov) on 31/07/2026 at 12:43..
[libc++][NFC] Make size_t -> int conversions explicit in a few PSTL tests (#213145)

The implicit truncating conversions that were introduced in some PSTL
tests are causing warnings on MSVC. This PR fixes that.

See
https://github.com/llvm/llvm-project/pull/212366#discussion_r3679252259
for more details.
https://invent.kde.org/qt/clang/llvm-project/-/commit/2f30bd168ccb47a82a25faba92cae4d6d0b47f0d

Git commit 4dc60bbb98a8531841383c51a1b7e65a0ec1d05e by GitHub (on behalf of Paul Walker) on 31/07/2026 at 12:45..
[Build] Fix llvm-calc-occupancy link errors when using LLVM_LINK_LLVM_DYLIB. (#213262)
https://invent.kde.org/qt/clang/llvm-project/-/commit/4dc60bbb98a8531841383c51a1b7e65a0ec1d05e

Git commit 95ee221ea8fade17576845f12df8c2cd26f85aa5 by GitHub (on behalf of Eugene Epshteyn) on 31/07/2026 at 12:47..
[flang] Delete the legacy array-value operations from FIR (#213159)

Nothing in flang has produced fir.array_load, fir.array_fetch,
fir.array_update, fir.array_modify, fir.array_access, fir.array_amend,
or fir.array_merge_store since the legacy (non-HLFIR) expression
lowering was deleted (#210385, #210621, #210639, #210873), and the
array-value-copy pass that legalized them is gone (#211816, #212643).
Delete the operations and the surface that existed only for them:

- FIROps.td: the "Array value operations" section including the
copy-in/copy-out design comment; FIROps.cpp: the ops verifiers, effects
and getExtents. fir.array_coor is unrelated and stays, as does the
validTypeParams helper shared with fir.pack_array.
- Tests: the ops roundtrip/verifier blocks in fir-ops.fir and
invalid.fir; scaffolding rewrites in inline-elemental.fir (store via
hlfir.designate; hlfir.apply-in-do_loop coverage preserved),
loop-versioning.fir @test4 (the versioned loops are untouched), and
simplifyintrinsics.fir (inert copy-back loops dropped; no CHECK lines
affected).
- Docs: FIRArrayOperations.md (+ the index.md toctree line); past-tense
updates in HighLevelFIR.md; a stale comment in MutableBox.h; a
release-note entry recording the removal for downstream projects.
FIRLangRef is generated from FIROps.td and follows automatically.

Assisted-by: AI
https://invent.kde.org/qt/clang/llvm-project/-/commit/95ee221ea8fade17576845f12df8c2cd26f85aa5

Git commit 315bbbc18c45079bab55575325b4d4f79aa9a4cd by GitHub (on behalf of Nico Weber) on 31/07/2026 at 12:53..
[gn] port b11722f1d3bd5de (llvm-calc-occupancy) (#213266)
https://invent.kde.org/qt/clang/llvm-project/-/commit/315bbbc18c45079bab55575325b4d4f79aa9a4cd

Git commit f79a8888eb831238423362d004739683e2a20d93 by GitHub (on behalf of Zorojuro) on 31/07/2026 at 12:58..
[libc] Fix float128-to-integer conversion UB  (#211593)

https://github.com/llvm/llvm-project/pull/200565#discussion_r3643991194
Fixes the recent issue pointed out in the above comment
about undefined behavior for float128 in the case of extremely large
values and extremely small values.
https://invent.kde.org/qt/clang/llvm-project/-/commit/f79a8888eb831238423362d004739683e2a20d93

Git commit f5ffd86a9bd6dd9327669448c3b604ce9b658941 by GitHub (on behalf of Nerixyz) on 31/07/2026 at 13:08..
[lldb] Treat synthetic variables as always in scope (#204177)

When the variables in scope are requested, synthetic variables wouldn't
be returned, because `Variable::IsInScope` would return false. With this
PR, we return true for synthetic variables.

There's still one inconsistency between `frame var` and
`SBFrame::GetVariables` where `frame var` shows "re-exported" variables
from real frames (here: `variable_in_main`). Note that
`IsSyntheticValueType` returns false for `variable_in_main`.
https://invent.kde.org/qt/clang/llvm-project/-/commit/f5ffd86a9bd6dd9327669448c3b604ce9b658941

Git commit 5df5e8d9fd6386d99c37cb72ea92c99819c801bc by GitHub (on behalf of Dmitry Sidorov) on 31/07/2026 at 13:16..
[AMDGPU] Add custom lowering of llvm.convert.from.arbitrary.fp for FP8 (#194144)

Map conversions from FP8 source formats to v_cvt_{,pk_}f32_{fp8,bf8} and v_cvt_{pk_}f16_{fp8,bf8} HW instructions.
https://invent.kde.org/qt/clang/llvm-project/-/commit/5df5e8d9fd6386d99c37cb72ea92c99819c801bc

Git commit d73beb2ee622eb1aaa13a4bdbe25799031f647f8 by GitHub (on behalf of Eugene Epshteyn) on 31/07/2026 at 13:29..
[flang] Delete the unused ragged-array runtime builders (#213160)

The ragged-array machinery served the legacy FORALL mask temporaries,
whose lowering was removed with the legacy expression lowering (#210639,
#210873) and the array-value-copy pass (#212643). The builders
(fir::runtime::genRaggedArrayAllocate/Deallocate) and the
getRaggedArrayHeaderType helper have no compiler callers left; only
their own unit test exercised them. Delete the builders, the helper, and
the unit test.

The flang-rt runtime entry points
(RaggedArrayAllocate/RaggedArrayDeallocate in
flang-rt/lib/runtime/ragged.cpp and their declarations in
flang/include/flang/Runtime/ragged.h) are ABI and remain.

Assisted-by: AI
https://invent.kde.org/qt/clang/llvm-project/-/commit/d73beb2ee622eb1aaa13a4bdbe25799031f647f8

Git commit f6b3f9399e98ef8b79388176e94c910d67669e1f by GitHub (on behalf of Matt Arsenault) on 31/07/2026 at 13:58..
DAG: Use poison for some load/store offsets in legalizer (#167756)

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

Git commit 7d5dd438b286d4812a8d2e753262cb6db1c3be51 by GitHub (on behalf of Alexey Samsonov) on 31/07/2026 at 14:15..
[libc] Add 'struct ucred' definition. (#213152)

This is a Linux extension that allows to obtain credentials of a peer
process connected to a socket, e.g. via passing `SO_PEERCRED` to
`getsockopt` function.
https://invent.kde.org/qt/clang/llvm-project/-/commit/7d5dd438b286d4812a8d2e753262cb6db1c3be51

Git commit c325d6fcb6db298f681ae1c450b89b4c255fb3ce by GitHub (on behalf of Bryth) on 31/07/2026 at 14:18..
[mlir][complex] Fix canonicalize tests (#213259)

Remove trailing spaces and double line breaks, fix variable
re-definitions, make variables match regex consistent.
https://invent.kde.org/qt/clang/llvm-project/-/commit/c325d6fcb6db298f681ae1c450b89b4c255fb3ce

Git commit fd7993ea2dcc76f915da1baf1b36f5cd560722a8 by GitHub (on behalf of Alexey Samsonov) on 31/07/2026 at 14:29..
[libc] Add <sys/statfs.h> header and entrypoints. (#213108)

Implement `statfs` and `fstatfs` functions on Linux.

We already have `struct statfs` and syscall wrappers defined (to
implement POSIX `<sys/statvfs.h>`). Use them to provide Linux-specific
functions as well.
https://invent.kde.org/qt/clang/llvm-project/-/commit/fd7993ea2dcc76f915da1baf1b36f5cd560722a8

Git commit 8719d58faf6fb5780bf44fc89df72c951f381f5b by GitHub (on behalf of Sean Clarke) on 31/07/2026 at 14:32..
[LoopIdiom] Fix miscompile for big-endian sub-byte CRC (#213040)

The Sarwate lookup table optimization shifts the top bits of the
`Indexer` down to the low byte before indexing into the table. Though
uncommon, if the CRC has a sub-byte width, the top bits of `Indexer`
must be shifted *up* to align with the low byte, but this is never
accounted for. Shift `Indexer` either right *or* left depending on CRC
bitwidth.
https://invent.kde.org/qt/clang/llvm-project/-/commit/8719d58faf6fb5780bf44fc89df72c951f381f5b

Git commit 1505b3e83d2810fbff92b645a1b67e18918900c0 by GitHub (on behalf of Kseniya Tikhomirova) on 31/07/2026 at 14:46..
[libsycl] Add liboffload context handler to default context (#213249)

Signed-off-by: Tikhomirova, Kseniya <[email protected]>
https://invent.kde.org/qt/clang/llvm-project/-/commit/1505b3e83d2810fbff92b645a1b67e18918900c0

Git commit 3e65a09adcd9a57bf495b73e2b96c77b13ae7779 by GitHub (on behalf of Nick Sarnie) on 31/07/2026 at 14:49..
[ClangLinkerWrapper][SPIRV] Fix embed bitcode option (#213137)

We need to pass the right linker option and not try to containerize it.

Fixes two OpenMP offload JIT tests, the other has some front end assert
I will look at.

Signed-off-by: Nick Sarnie <[email protected]>
Co-authored-by: Claude Opus 4.8 (1M context) <[email protected]>
https://invent.kde.org/qt/clang/llvm-project/-/commit/3e65a09adcd9a57bf495b73e2b96c77b13ae7779

Git commit 7b8d7c9d687b177f0b61ef71992b5ed847334eba by GitHub (on behalf of Arun Thangamani) on 31/07/2026 at 14:55..
[mlir][x86] Adds extra pattern for AMX lowering (#213228)

This patch add extra pattern for `AMX` lowering, where the `M`, `N`, and
`K` loops are removed as part of `Canonicalization `
https://invent.kde.org/qt/clang/llvm-project/-/commit/7b8d7c9d687b177f0b61ef71992b5ed847334eba

Git commit 25aec49d40d52ab730d360fc362ecd8b46e00db5 by GitHub (on behalf of Jon Roelofs) on 31/07/2026 at 14:55..
[llvm][AArch64] Add pipeliner remarks (#213157)
https://invent.kde.org/qt/clang/llvm-project/-/commit/25aec49d40d52ab730d360fc362ecd8b46e00db5

Git commit afd6d6eeb013c08a9d7c682d01c6a2152023c9cd by GitHub (on behalf of Alexey Bataev) on 31/07/2026 at 14:57..
[SLP]Support copyables in the fmuladd multiplicand

Allow a non-fmuladd lane V to be modeled as fmuladd(V, 1.0, -0.0),
which equals V for every V (V * 1.0 is exact, and V + -0.0 preserves
signed zeros). The addend modeling is still preferred; the
multiplicand is used as a fallback when the addend operand does not
allow vectorization. The copyable position is kept as an operand
index in InstructionsState, so other operands can be modeled later.

Reviewers: hiraditya, RKSimon

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

Git commit 55923bf5df245f44083c096914da4a005ba5d6a8 by GitHub (on behalf of Balázs Benics) on 31/07/2026 at 15:01..
[analyzer] Don't fold wide string literals in CStringChecker (#213281)

`getStringRefAtRegion()` read literal contents via
`StringLiteral::getBytes()`, which returns the literal's raw trailing
storage. For wide literals (`u""`, `U""`, `L""`) that storage holds the
code units in *host* byte order: `LiteralSupport` writes them through
`reinterpret_cast<UTF16*>/<UTF32*>`, and `StringLiteral::getCodeUnit()`
reads them back the same way. Interpreting those bytes as a target byte
string made the strchr-family constant folding depend on the endianness
of the machine running the analyzer.

Bail out on `getCharByteWidth() != 1`, matching the contract the rest of
the checker already relies on -- `evalStrcmpCommon()` uses
`getString()`, which asserts it. Wide literals now fall back to the
symbolic-offset path and keep both branches.

Fixes up #212124
Inspired from:
https://github.com/llvm/llvm-project/pull/212124#issuecomment-5143598098

Supersedes #213279
https://invent.kde.org/qt/clang/llvm-project/-/commit/55923bf5df245f44083c096914da4a005ba5d6a8

Git commit 96ca8cf60e0d2ee992f714dbe6ebc4cd079e50a7 by GitHub (on behalf of Pengcheng Wang) on 31/07/2026 at 15:12..
Revert "[MachineLICM] Use `RegisterClassInfo::getRegPressureSetLimit`" (#213287)

Reverts llvm/llvm-project#211715 because of some failures.
https://invent.kde.org/qt/clang/llvm-project/-/commit/96ca8cf60e0d2ee992f714dbe6ebc4cd079e50a7

Git commit 61b16cb275a4823059b34f67c41c265098b6d35f by GitHub (on behalf of Matt Arsenault) on 31/07/2026 at 15:23..
AMDGPU: Do not give gfx12.5 bvh-ray-tracing-insts (#213246)

bvh-ray-tracing-insts was listed in the FeatureGFX12 generation, so
gfx1250/gfx1251/gfx12-5-generic inherited it even though they have no
BVH. Move the feature out of the common base and into FeatureISAVersion12.
This stops clang from wrongly accepting __builtin_amdgcn_image_bvh_intersect_ray*
on gfx1250.

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

Git commit cb1642b6f9e458bf8ff5d2c41e22a7f7cf6ee419 by GitHub (on behalf of Rashmi Mudduluru) on 31/07/2026 at 15:36..
[Webkit Checkers][SaferCpp] Detect implicit `id`-to-specific-type casts in MemoryUnsafeCastChecker (#213113)

Flag arguments of type `id` implicitly converted to a specific
Objective-C pointer type at a call, message send, or constructor call
(e.g. passing `id` where an `NSString *` parameter is expected). These
conversions compile without a visible cast but throw at runtime if the
object is not actually of that type.

rdar://148708396
https://invent.kde.org/qt/clang/llvm-project/-/commit/cb1642b6f9e458bf8ff5d2c41e22a7f7cf6ee419

Git commit 28d9aec513c63beffd2631412adfae327763559e by GitHub (on behalf of Sean Clarke) on 31/07/2026 at 15:40..
[LoopIdiom] Use costing to determine CRC strategy (#211040)

The CRC loop clmul optimization currently only runs under optsize,
despite being significantly faster than the Sarwate table optimization
in many cases. Model the costs of each approach and weigh them against
each other to determine which optimization should be used. Since the
benefits of clmul are unclear for optsize, simply bail in that case
instead.

Assisted-by: Claude Opus 4.8
https://invent.kde.org/qt/clang/llvm-project/-/commit/28d9aec513c63beffd2631412adfae327763559e

Git commit 6a519a650430acbed79cecd8bf98197661a718de by Matt Arsenault on 31/07/2026 at 15:58..
AMDGPU: Tablegenerate TargetParser feature sets

Traditionally we maintained 2 parallel feature mechanisms,
one in clang (later moved to TargetParser), with largely
mirrored subtarget features defined in the backend. Start
directly taking feature information from the backend and putting
it into TargetParser. This is still in a compromise mid-migration
state. We still have both the legacy "ArchAttr" bitfield integer,
plus a new AMDGPUFeatureBitset field stored in the table, which
isn't yet exported.

For the moment, the new bitset is only used to populate the
feature string name map, which is the big maintainability win.
This also lists an explicit subset of exported features to
avoid churn.

Co-authored-by: Claude (Claude-Opus-4.8)
https://invent.kde.org/qt/clang/llvm-project/-/commit/6a519a650430acbed79cecd8bf98197661a718de
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.