[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/arsenm/amdgpu/fillfeaturemap-mqsad-pk-insts'.
Changed from 0000000000000000000000000000000000000000 to 747ab7a52d81f5b0be7329919a0faadec0bf2e17
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 0cf29309fd12668307f39bd540100618de626e94 by GitHub (on behalf of Erich Keane) on 30/07/2026 at 17:14..
[CIR]Implement lowering for simple sin/cos/tan/exp10 builtins. (#211614)

Discovered these just looking around, they are pretty simple/trivial
translations to LLVM-IR intrins, and the infrastructure to do so is
already in place, so this is a bit of simple wiring up!

Implements f/h/hl versions of sin/cos/tan. Also implements base-10
exponent, since it is also trivial.
https://invent.kde.org/qt/clang/llvm/-/commit/0cf29309fd12668307f39bd540100618de626e94

Git commit 3ce0df7ca8027229618de9802eeffe1f0023bf74 by GitHub (on behalf of Volodymyr Sapsai) on 30/07/2026 at 17:15..
[Modules] Handle decl attributes on deserialization the same as during parsing. (#208348)

Replace manual handling of 2 attributes with
`Sema::mergeDeclAttributes`, which is called during parsing too. Also
propagate attributes not from a previous redeclaration but from a
previous redeclaration outside of the current module. This is done to
avoid double propagation because attributes from a previous decl in the
same module are already handled when a module is built.

Call `ASTDeclReader::attachLatestDecl` after each decl is added to a
redeclaration chain, not once per `ASTReader::loadPendingDeclChain`
call. This is done to maintain correct redeclaration chain for each
`ASTDeclReader::attachPreviousDecl` call because [newly added]
`mergeDeclAttributes` requires a correct redeclaration chain.

Separated `Parser::Initialize` and `Parser::ConsumeToken` so can move
the initialization earlier, into `Parser` constructor. This way
`Parser::Initialize`, `Sema::Initialize`, `ASTReader::InitializeSema` are
executed before deserialization. This specific case is verified by
"Modules/decl-attr-merge-explicit-modules.c".

The change can cause compilation errors for downstream `Parser` clients.
Instead of calling `Parser::Initialize` now you need to call
`Parser::ConsumeToken`.

rdar://175997317
https://invent.kde.org/qt/clang/llvm/-/commit/3ce0df7ca8027229618de9802eeffe1f0023bf74

Git commit 97ff9fc6daee52427f64ba9f11c1c6f268fab4fa by GitHub (on behalf of Erich Keane) on 30/07/2026 at 17:15..
[CIR] Allow cir.copy to work across address spaces- (#211873)

LLVM Memcpy supports copying across address spaces, so we should too. IN
C, this is legal, and there are no associated AST nodes to reasonably
put in a cast, so this patch just legalizes it to match the LLVM
behavior.

Note: I've added a 'CopyTypes' printer/parser as well, because it seems
unfortunate to make EVERY copy have to show all of its types.
https://invent.kde.org/qt/clang/llvm/-/commit/97ff9fc6daee52427f64ba9f11c1c6f268fab4fa

Git commit 4dd8a2972273d9613b3004516c6bc9d7cf525f68 by GitHub (on behalf of Alexey Bataev) on 30/07/2026 at 17:25..
[SLP]Release scheduling deps of copyable reassoc operands only once

A flattened reassoc node may have a scalar that is both a modeled
copyable tree operand (child entry) and a direct IR operand of a node
member. Scheduling such a member released its ScheduleCopyableData
dependency twice - in the per-lane operand scan and again in the
reassoc operand cleanup - driving UnscheduledDeps negative. Dedup the
cleanup release through the same Checked set the operand scan uses.

Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/213079
https://invent.kde.org/qt/clang/llvm/-/commit/4dd8a2972273d9613b3004516c6bc9d7cf525f68

Git commit 57a38f251bbb1e443642d4972c88550c750510cb by GitHub (on behalf of Matt Arsenault) on 30/07/2026 at 17:26..
IR: Use LongDoubleFormat enum for long-double-type module flag (#213056)

Add parse/print helpers for the LongDoubleFormat enum, and route the
"long-double-type" module flag producers and consumers through them
instead of hardcoded strings in every location. Also clean up some
unnecessary failure checks guaranteed by the verifier.

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

Git commit 2e838bf84da94760fa49e132108e954a62815573 by GitHub (on behalf of Alexey Samsonov) on 30/07/2026 at 17:29..
[libc] Fix aligned_alloc used in hermetic tests. (#213041)

Use the provided alignment for the pointer to the returned
memory chunk instead of the size.

This fixes occasional segfaults in `hsearch` tests after
ce62aab97e58c52e6bb0972c49d6fd1aaa6a08a0, since
hash-table bitmask implementation uses SSE2 intrinsics with 16-byte
alignment.
https://invent.kde.org/qt/clang/llvm/-/commit/2e838bf84da94760fa49e132108e954a62815573

Git commit 056dae16f7d219f0dc943828dccd6cc3773d2674 by GitHub (on behalf of Ivan R. Ivanov) on 30/07/2026 at 17:30..
[mlir][gpu] Add stream-based async mode to gpu.launch (#213031)

Currently, only gpu.launch_func supports stream-based asynchronicity. This
patch adds the same mode to gpu.launch, and makes kernel outlining preserve
that when converting to gpu.launch_func.

This patch also documents the stream-based model in the operations description,
which was previously missing.

This patch changes the builders for the two launch operations:

To retain the current behavior for gpu.launch one needs to add a `nullptr` for
the new `Value asyncObject` argument after the `ValueRange asyncDependencies`,
and make sure to pass a valid type for the `Type asyncTokenType` parameter if
dependency-based async behavior is intended.

For gpu.launch_func, both stream-based and dependency-based async models now go
through the same builders, which take all three `Type asyncTokenType,
ValueRange asyncDependencies, Value asyncObject` arguments. To retain
stream-based behavior, pass `nullptr, {}` to the first two parameters, while to
retain dependency-based behavior, pass `nullptr` to the third parameter.

Assisted-by: Claude Code
https://invent.kde.org/qt/clang/llvm/-/commit/056dae16f7d219f0dc943828dccd6cc3773d2674

Git commit 44cf7e37312967a0538501cc8ac044f6a72c9efb by GitHub (on behalf of Daniel Chen) on 30/07/2026 at 17:32..
Fix test case failure due to Commit aa50eb69 DwarfDebug: Move emission of types from beginModule() to endModule() (#212805)

Commit `aa50eb69 ("DwarfDebug: Move emission of types from beginModule()
to endModule()") ` added new CHECK lines
to `debug-info-qualifiers.ll` that broke on XCOFF/AIX in two ways:
(1) `CHECK-NOT: DW_TAG_subprogram` tripped on abbrev table entries
printed before .debug_info, and
(2) the pattern `{{.*}} "g")` had a space/paren mismatch against the AIX
dwarfdump output format

This PR is fix that by adding `; CHECK: .debug_info contents: ` anchor
and changed the pattern to `{{.*}}"g"` in the test file
https://invent.kde.org/qt/clang/llvm/-/commit/44cf7e37312967a0538501cc8ac044f6a72c9efb

Git commit 2f238db9da1cec04f7e143fb264aa1c0fd4578ef by GitHub (on behalf of Zhen Wang) on 30/07/2026 at 17:38..
[flang][cuda] Treat unified data as host data in assignments (#212912)

Unified data was counted as managed data in the data transfer predicate,
so assignments between unified sides, or between unified and host data,
became synchronous copies.

Unified data is host memory that the device can also access, so it now
takes the place of host data there: the assignment is a copy only when
the other side is device or constant data, or a whole managed array, and
is done on the host otherwise.

This matches the reference compiler for whole arrays, sections,
elements, scalars, allocatables, components and expressions.
https://invent.kde.org/qt/clang/llvm/-/commit/2f238db9da1cec04f7e143fb264aa1c0fd4578ef

Git commit c486d28c1ec80f832a0e3cb3173d1940e632742c by GitHub (on behalf of Bar Soloveychik) on 30/07/2026 at 17:51..
[lldb] Make missing DWO diagnostics customizable (#212338)

Adds a default-empty `LLDB_DWO_DIAGNOSTIC_SUFFIX` macro and appends it
to both missing-DWO diagnostics.

The idea is companies or build engineers can build with an extra cmake
-D flag to include internal URL links or troubleshooting tips when dwo
files are missing.

tested with:
```
bin/llvm-lit -sv tools/lldb/test/Shell/SymbolFile/DWARF/x86/dwo-not-found-warning.cpp
```

added `GetDwoDiagnosticSuffix()` because a macro has no runtime symbol.
The function lets lldb-test read the exact value compiled into the DWARF
plugin.

---------

Co-authored-by: Bar Soloveychik <[email protected]>
https://invent.kde.org/qt/clang/llvm/-/commit/c486d28c1ec80f832a0e3cb3173d1940e632742c

Git commit 730b803ed05e307d635b6b2764fad833629042c2 by GitHub (on behalf of Kareem Ergawy) on 30/07/2026 at 17:53..
[flang][Transforms] Add `SelectOpsConversion` pass (#212977)

Introduces `--fir-select-ops-conversion`, which lowers `fir.select`,
`fir.select_case`, and `fir.select_rank` to the control-flow dialect
(`cf.switch` / `cf.cond_br` / `cf.br`) while preserving the CFG shape.
`fir.select_case` becomes an if-then-else ladder of `arith.cmpi` +
`cf.cond_br`; Fortran `UNSIGNED` selectors use `ule`. Signed / unsigned
FIR integer values are normalized to signless via `fir.convert` first.

`fir.select_type` is not handled here — it is already lowered by
`--fir-polymorphic-op` (`PolymorphicOpConversion`).

The pass runs in the default FIR optimizer pipeline right after
`PolymorphicOpConversion`. Pipeline-check tests are updated to expect
`SelectOpsConversion` in the sequence; `Fir/select.fir` and
`Lower/volatile3.f90` are relaxed to accept the newly-canonicalized form
of the lowered output.

The main purpose of moving these conversion pattern earlier in the MLIR
pipeline and target `cf` instead of directly `llvm` is to be able to
later on use control-flow to structured-control-flow lifting:
https://github.com/llvm/llvm-project/blob/main/mlir/include/mlir/Conversion/Passes.td#L402.

Co-Authored-By: Claude Sonnet 4.6 (1M context) <[email protected]>


PR Stack:
* ▶️ https://github.com/llvm/llvm-project/pull/212977
* https://github.com/llvm/llvm-project/pull/212978

---------

Co-authored-by: Claude Sonnet 4.6 (1M context) <[email protected]>
https://invent.kde.org/qt/clang/llvm/-/commit/730b803ed05e307d635b6b2764fad833629042c2

Git commit 4f705acc388ab2c627fb263d89d1d60468f8a97b by GitHub (on behalf of Luke Lau) on 30/07/2026 at 17:54..
[VPlan] Fix optimizeFindIVReductions not negating condition of blend (#213050)

Fixes #212993

#194729 made the m_Select a m_SelectLike, so FindLastSelect could now be
a blend. However we were checking the first operand to see if the Cond
needed inverted. A select has `select %cond, %true, %false`, a blend is
`blend %false, %cond, %true`, so we were failing to negate the
condition.
https://invent.kde.org/qt/clang/llvm/-/commit/4f705acc388ab2c627fb263d89d1d60468f8a97b

Git commit 005b3858f602ec5a193740cb166244d5234ce98f by GitHub (on behalf of Andy Kaylor) on 30/07/2026 at 17:55..
[CIR] Add fenv attribute to compare operations (#213072)

This adds the #cir.fenv attribute to the cir.cmp and cir.vec.cmp and
adds verfiers to enforce that the attribute is only present when the
comparison involves floating-point values.

The cir.vec.cmp operation has an existing folder which is skipped in
this change when the fenv attribute is present. In most circumstance,
this folding could still be done, but the implementation is
intentionally conservative at this point. Proper checking of the
conditions under which folding would be legal will be added later.

The cir.cmp operation does not currently have a folder.

Assisted-by: Cursor / various models
https://invent.kde.org/qt/clang/llvm/-/commit/005b3858f602ec5a193740cb166244d5234ce98f

Git commit 747ab7a52d81f5b0be7329919a0faadec0bf2e17 by Matt Arsenault on 30/07/2026 at 19:19..
AMDGPU: Add missing mqsad-pk-insts to gfx13 frontend feature map

fillAMDGCNFeatureMap omitted mqsad-pk-insts for gfx1310/gfx13-generic, so
clang wrongly rejected __builtin_amdgcn_mqsad_pk_u16_u8 on those targets
even though the backend enables the feature. Add it to the gfx13 case.

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