[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/rampitec/duplicate-packed-f32'.
Changed from 82da5a96ef01d9d7555339212c72583ef83d01f1 to 295511765718e55542519a39af949a99776325cc
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-project/-/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-project/-/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-project/-/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-project/-/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-project/-/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-project/-/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-project/-/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-project/-/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-project/-/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-project/-/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-project/-/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-project/-/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-project/-/commit/005b3858f602ec5a193740cb166244d5234ce98f

Git commit b1cf39d2db1fbc644c46e6783d022e274884fda9 by GitHub (on behalf of David Green) on 30/07/2026 at 18:19..
[GlobalISel] Use integer type for LOAD_STACK_GUARD (#212202)
https://invent.kde.org/qt/clang/llvm-project/-/commit/b1cf39d2db1fbc644c46e6783d022e274884fda9

Git commit 63b3eb10e5f5807bf4c9c0f9ec582f03582c58fe by GitHub (on behalf of Benedek Kaibas) on 30/07/2026 at 18:37..
Revert "[clang][docs] Update CommandLineUsage and UsersManual with some flags (#209519)" (#213092)

This PR reverts commit e4c2875c397861ea45a0cca05107d91d7d785d03.
Reverting because of:
https://github.com/llvm/llvm-project/actions/runs/30559163159/job/90927389811#step:10:822
https://invent.kde.org/qt/clang/llvm-project/-/commit/63b3eb10e5f5807bf4c9c0f9ec582f03582c58fe

Git commit 6162922a8d7cef0cf2e27b91c980197d371c89b9 by GitHub (on behalf of Prabhu Rajasekaran) on 30/07/2026 at 18:37..
Revert "[HIPSPV] Add in-tree SPIR-V backend support for chipStar" (#213088)

Reverts llvm/llvm-project#206910 
which broke buildbot:
https://lab.llvm.org/buildbot/#/builders/144/builds/60707
https://invent.kde.org/qt/clang/llvm-project/-/commit/6162922a8d7cef0cf2e27b91c980197d371c89b9

Git commit 6c5dfef69069230264b3aa7c90656726cc9eac1c by GitHub (on behalf of Ramkumar Ramachandra) on 30/07/2026 at 18:38..
[PatternMatchHelpers] Introduce m_Unless (NFC) (#212454)

Introduce m_Unless from PatternMatch, that inverts a match, in
PatternMatchHelpers.
https://invent.kde.org/qt/clang/llvm-project/-/commit/6c5dfef69069230264b3aa7c90656726cc9eac1c

Git commit 5b897d9b57494ef37615cd9af88507a212ab5703 by GitHub (on behalf of vsimion26) on 30/07/2026 at 18:52..
Fix classof implementation for QuantizedType (#213014)

This PR aims to fix the misleading implementation of `classof` which
accepted as a `QuantizedType` every type registered under the
`QuantDialect.`

The now updated implementation makes the checks more restrictive,
allowing only direct subtypes of `QuantizedType` to be recognized as a
`QuantizedType,` therefore preventing `QuantileType` and other types
that are registered under `QuantDialect` to be seen as a subtype of
`QuantizedType` and wrongfully use its methods which might lead to
potential crashes.
https://invent.kde.org/qt/clang/llvm-project/-/commit/5b897d9b57494ef37615cd9af88507a212ab5703

Git commit 0e42c871c2c8a40926ad929cfa334fd1d3c98dfa by GitHub (on behalf of Matt Arsenault) on 30/07/2026 at 18:57..
NVPTX: Add target names in TargetParser (#212734)

Track the canonical sm name and other target information.
This will eventually be used to reduce the pain of maintaining
OffloadArch in clang; all of the disjoint targets share an
enum which makes target specific covered switches annoying.

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

Git commit 1562871d4191f39de7ed0ae53f8ca48b8e2d4242 by GitHub (on behalf of Matt Arsenault) on 30/07/2026 at 18:59..
clang: Use NVPTX TargetParser for OpenMP unified-addressing check (#212746)

processRequiresDirective enumerated every OffloadArch value in a switch
only to error on nvptx architectures older than sm_60. Replace it with
NVPTX::supportsUnifiedAddressing() applied to the parsed target CPU so
we don't need to keep adding cases here every time a new target is
added.

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

Git commit 6e92d6d0577cbe102bd48f396301ea5cd0ebf247 by GitHub (on behalf of Rainer Orth) on 30/07/2026 at 19:11..
[tsan] Fix buildgo.sh on FreeBSD/NetBSD (#213047)

This patch fixes the remaining compile errors when running `ninja
check-all` on FreeBSD and NetBSD:

- `sanitizer_linux.cpp` doesn't compile on NetBSD, so this patch adds a
cast:
  ```
sanitizer_common/sanitizer_linux.cpp:2492:10: error: format specifies
type 'unsigned long long' but the argument has type '__greg_t' (aka
'unsigned long') [-Werror,-Wformat]
   ```

- `tsan_interface_atomic.cpp` doesn't compile on both FreeBSD and
NetBSD, so this patch disables the warning:
  ```
tsan_interface_atomic.cpp:353:12: error: unused function template
'NoTsanAtomic' [-Werror,-Wunused-template]
tsan_interface_atomic.cpp:358:12: error: unused function template
'Atomic' [-Werror,-Wunused-template]
tsan_interface_atomic.cpp:389:12: error: unused function template
'NoTsanAtomic' [-Werror,-Wunused-template]
tsan_interface_atomic.cpp:394:12: error: unused function template
'Atomic' [-Werror,-Wunused-template]
tsan_interface_atomic.cpp:401:12: error: unused function template
'NoTsanAtomic' [-Werror,-Wunused-template]
tsan_interface_atomic.cpp:406:12: error: unused function template
'Atomic' [-Werror,-Wunused-template]
  ```

- `sanitizer_linux_libcdep.cpp` doesn't compile on NetBSD:
  ``` 
sanitizer_linux_libcdep.cpp:527:27: error: use of undeclared identifier
'__lwp_getprivate_fast'; did you mean '_lwp_getprivate'?
  ```
This is the same issue already handled in `tsan_platform_linux.cpp`: to
expose the `__lwp_getprivate_fast` definition in `<machine/mcontext.h>`,
`_RTLD_SOURCE` needs to be defined before `<machine/mcontext.h>` is
included (indirectly from `<signal.h>` in this case). It also needs to
include `<sys/types.h>` to get a definition of the `__aligned` macro.

Tested on `amd64-pc-freebsd15.1` and `amd64-pc-netbsd10.1`.
https://invent.kde.org/qt/clang/llvm-project/-/commit/6e92d6d0577cbe102bd48f396301ea5cd0ebf247

Git commit 40e33eb35417f565e2ed8a6c0dba63cbd618a926 by GitHub (on behalf of Florian Hahn) on 30/07/2026 at 19:12..
[VPlan] Set correct VPIRFlags for FP selects when sinking stores. (#212973)

Selects of floats carry fast-math flags. Update getDefaultFlags to take
the result type and use it to handle selects. I am planning on extending
this to other similar opcodes, including PHIs.

Then update sinkPredicatedStores to pass through the correct default
flags.

This fixes a crash in cse when intersecting common metadata.

Fixes https://github.com/llvm/llvm-project/issues/212811.

PR: https://github.com/llvm/llvm-project/pull/212973
https://invent.kde.org/qt/clang/llvm-project/-/commit/40e33eb35417f565e2ed8a6c0dba63cbd618a926

Git commit 5f10bade30ec9e73f19349df7eb833aae323a2e3 by GitHub (on behalf of Joel E. Denny) on 30/07/2026 at 19:13..
[LoopUnroll] Fix freqs for unconditional latches: N>2, uniform (#182405)

This patch introduces the command-line option `-unroll-uniform-weights`.
When computing probabilities for the remaining N conditional latches in
the unrolled loop after converting some iterations' latches to
unconditional, LoopUnroll now supports the following three strategies:

- A. If N <= 2, use a simple formula to compute a single uniform
  probability across those latches.
- B. Otherwise, if `-unroll-uniform-weights` is not specified, apply the
  original loop's probability to all N latches and then, as needed, adjust
  as few of them as possible.
- C. Otherwise, bisect the range [0,1] to find a single uniform
  probability across all N latches. This patch implements this strategy.

An issue with C is that it could impact compiler performance, so this
patch makes it opt-in. Its appeal over B is that it treats all latches
the same given that we have no evidence showing that any latch should
have a higher or lower probability than any other. A has neither
problem, but I do not know how to apply it for N > 2. More experience or
feedback from others might determine that some strategies are not
worthwhile to maintain.

This patch depends on PR #182404.
https://invent.kde.org/qt/clang/llvm-project/-/commit/5f10bade30ec9e73f19349df7eb833aae323a2e3

Git commit 3d94aebde11a6410fc1ee93f12622114c60ace3d by GitHub (on behalf of Rainer Orth) on 30/07/2026 at 19:14..
[flang] Fix POSIX.1/XPG checks in intrinsics-library.cpp (#201072)

PR #201063 breaks the `flang` build on Solaris:

```
flang/lib/Evaluate/intrinsics-library.cpp:225:26: error: address of overloaded function 'acos' does not match required type '__float128 (__float128)'
flang/lib/Evaluate/intrinsics-library.cpp:225:26: error: address of overloaded function 'acos' does not match required type '_Complex __float128 (_Complex __float128)'

```

There are two problems here:
- The `__float128` support in `intrinsics-library.cpp` is guarded by the
POSIX.1 >= 2001/XPG >= 6 check, but only depends on `HAVE_QUADMATHLIB`.
- That check is done incorrectly: it tests for `_POSIX_C_SOURCE >=
200112L` or `_XOPEN_SOURCE >= 600`, which are no longer defined on
Solaris after the PR above. This check is due a misunderstanding of
those feature test macros: as detailed in [The Open Group Base
Specifications Issue 8, 2.2.1 POSIX.1
Symbols](https://pubs.opengroup.org/onlinepubs/9799919799/functions/V2_chap02.html),
those macros are expected to be **defined** by the user to ensure that
the features introduced by a particular version of POSIX.1 or XPG are
enabled, and only be checked by system headers. To test if they actually
are supported, the values of `_POSIX_VERSION` or `_XOPEN_VERSION` need
to be checked instead, as explained in [2.1.3.1 POSIX System
Interfaces](https://pubs.opengroup.org/onlinepubs/9799919799/basedefs/V1_chap02.html).
The feature test macros being defined by the system headers is a
non-portable glibc/AIX extension, it seems.
If the XPG6 features required for `flang` are present by default in a
compilation environment, `_POSIX_VERSION` or `_XOPEN_VERSION` will be
defined to the required values even without defining `_POSIX_C_SOURCE`
or `_XOPEN_SOURCE`.

Tested on `amd64-pc-solaris2.11`, `sparcv9-sun-solaris2.11`, and
`x86_64-pc-linux-gnu`.
https://invent.kde.org/qt/clang/llvm-project/-/commit/3d94aebde11a6410fc1ee93f12622114c60ace3d

Git commit bb7c7d1e2a6b4a3487df8604f94e0b981e873899 by GitHub (on behalf of satyanarayana reddy janga) on 30/07/2026 at 19:23..
[lldb][minidump] Fix Memory64List DataSize over-counting on a failed read (#212861)

**Issue:**
save-core records each range's DataSize from the value
ReadMemoryInChunks returns. That value counts bytes read from the
inferior even when the callback dropped them: a chunk that errors
part-way returns Stop before AddData, so the partially-read bytes are
counted but never written.

Because the Memory64List locates every range by the cumulative DataSize
of the preceding ranges, an over-counted DataSize desyncs the shared
data blob: the descriptors claim more bytes than the file holds and
every later range reads back corrupted.

**Fix**
Record the bytes actually written (total_bytes_read) as the range's size
so the descriptor DataSize matches the data in the blob.

**Test**
Add an API test that custom-saves a fully-readable region alongside a
region whose tail is unreadable (a file mapped larger than the file),
and checks the Memory64List does not claim more data than the file holds
and that the readable region round-trips byte-for-byte.
https://invent.kde.org/qt/clang/llvm-project/-/commit/bb7c7d1e2a6b4a3487df8604f94e0b981e873899

Git commit 50a6209336d9796d26c1e6ecc9553093b074ecb2 by GitHub (on behalf of Arseniy Obolenskiy) on 30/07/2026 at 19:46..
[AMDGPU] Canonicalize constant CLAMP source (#207902)

CLAMP lowers to v_max_f32, which canonicalizes its result: signaling
NaNs are quieted and denormals are flushed per the function denormal
mode

The constant fold returned the source unchanged, giving a different
result than the hardware. Route the folded constant through
getCanonicalConstantFP so it matches
https://invent.kde.org/qt/clang/llvm-project/-/commit/50a6209336d9796d26c1e6ecc9553093b074ecb2

Git commit dd3a4ed6fbca3696b724b46e2934f3c27534f245 by GitHub (on behalf of Florian Hahn) on 30/07/2026 at 19:48..
[ConstraintElim] Tighten bounds using inequalities with constants. (#213049)

Update ConstraintElimination to tighten existing bounds using
inequalities. Given an inequality %a != %b and %a >= %b, we can tighten
the fact to %a > %b.

For now this is limited to constant %b.

This helps to remove some checks in practice:
https://github.com/dtcxzyw/llvm-opt-benchmark-nightly/pull/819

Compile-time impact in the noise:
https://llvm-compile-time-tracker.com/compare.php?from=2f08dff5138a4ce908b6d4511a9439e859fedf86&to=fafe1d0d9d012654bc10e2b68d50ffe3b9fdbdcd&stat=instructions:u

PR: https://github.com/llvm/llvm-project/pull/213049
https://invent.kde.org/qt/clang/llvm-project/-/commit/dd3a4ed6fbca3696b724b46e2934f3c27534f245

Git commit aae5b3f2a92cc1c08a4bd65ba397fba5e37272fe by GitHub (on behalf of Michael Jones) on 30/07/2026 at 19:52..
[scudo] Fix GCC build after 212604 (#212904)

Change #212604 introduced an issue when building with gcc where it
complains there are "too few template-parameter-lists" (see log:

https://lab.llvm.org/buildbot/#/builders/131/builds/51269/steps/6/logs/stdio
)
This PR fixes the build.

Assisted-by: Automated tooling, human reviewed.
https://invent.kde.org/qt/clang/llvm-project/-/commit/aae5b3f2a92cc1c08a4bd65ba397fba5e37272fe

Git commit ff95a766e3c5588db19b9c93e1a6f49bd40a2823 by GitHub (on behalf of Matt Arsenault) on 30/07/2026 at 19:53..
clang: Use proper error for unified shared memory openmp error (#212750)

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

Git commit 4304020b98e20a46dd8f56b361c5f62074e7b8a1 by GitHub (on behalf of Ramkumar Ramachandra) on 30/07/2026 at 20:08..
[VPlan] Migrate VPBuilder to VPInsertPt fully (NFC) (#209764)

There is already a VPInsertPoint in VPBuilder which is used just with
InsertPointGuard. In order to share code, migrate VPBuilder to fully use
VPInsertPoint as the canonical insertion point.
https://invent.kde.org/qt/clang/llvm-project/-/commit/4304020b98e20a46dd8f56b361c5f62074e7b8a1

Git commit b6e3037f6e6283392f306b58c8444e0efe40a23e by GitHub (on behalf of Nick Sarnie) on 30/07/2026 at 20:19..
[offload][lit] Disable failing olCreateProgram test on AMD (#213126)

Fails with an error about not being able to find `lld`. AMD team is
investigating, but disable the test in the meantime.

Context: https://github.com/llvm/llvm-project/pull/212860

Signed-off-by: Nick Sarnie <[email protected]>
https://invent.kde.org/qt/clang/llvm-project/-/commit/b6e3037f6e6283392f306b58c8444e0efe40a23e

Git commit b75ab58e83301a56e958ea011fd851c88d976fe5 by GitHub (on behalf of Patrick Simmons) on 30/07/2026 at 20:27..
[AMDGPU] Match bitsin(typeof(x)) - ctpop(x) to s_bcnt0_i32 (#164847)

This PR optimizes the pattern bitsin(typeof(x)) - popcnt(x) to
s_bcnt0_i32 on AMDGPU. It also creates a Clang builtin for s_bcnt0_i32
so that users can call this instruction directly instead of relying on
the compiler to match this pattern.
https://invent.kde.org/qt/clang/llvm-project/-/commit/b75ab58e83301a56e958ea011fd851c88d976fe5

Git commit 79f9cdae9dd4502f72f596ff406b0d10ae4cc5a0 by GitHub (on behalf of Jonas Devlieghere) on 30/07/2026 at 20:29..
[lldb] Add a unit test for Wasm architecture compatibility (#213070)

A Wasm module encodes neither a vendor nor an OS, so ObjectFileWasm
reports a bare wasm32 or wasm64 architecture. That keeps an on-disk
module compatible with the more specific triple a Wasm runtime reports
at launch, which lets the dynamic loader reuse the module instead of
reparsing it from process memory. An over-specified triple, including
one that spells out an unknown vendor and OS, does not match, because an
explicitly specified component still counts as specified.
https://invent.kde.org/qt/clang/llvm-project/-/commit/79f9cdae9dd4502f72f596ff406b0d10ae4cc5a0

Git commit cdec735f774869f2949a94a7bf2e446798bf3b8c by GitHub (on behalf of Michael Jones) on 30/07/2026 at 20:29..
[libc][docs] Add logo to website (#213120)

Add the excellent new logo drawn by @ajordanr-google to the homepage.
https://invent.kde.org/qt/clang/llvm-project/-/commit/cdec735f774869f2949a94a7bf2e446798bf3b8c

Git commit b05a5d09547bea535b4c26ee522ce310db118c47 by GitHub (on behalf of Med Ismail Bennani) on 30/07/2026 at 20:39..
[lldb/script] Migrate synthetic children providers onto ScriptedPythonInterface (#210845)

Give `type synthetic add -l` a formal
`ScriptedSyntheticChildrenInterface`, matching the architecture used
elsewhere in this series: a C++ interface header, a Python-backed
implementation, `PluginManager` registration with CLI/API usages, and a
generatable ABC template (`scripted_synthetic_children.py`) wired into
`scripting extension generate`.

Every method goes through the shared `Dispatch<T>()` machinery instead
of hand-rolling its own Locker/raw-SWIG calls. `Dispatch<T>()` is taught
to introspect the target method's arity via
`PythonCallable::GetArgInfo()` and drop trailing args before calling, so
providers that legitimately define an argument as optional
(`num_children(self)` vs. `num_children(self, max_count)`) still work
through the generic dispatch path.

This retires the ad-hoc `LLDBSwigPython_*` synthetic-children bridge
functions entirely.

Signed-off-by: Med Ismail Bennani <[email protected]>
https://invent.kde.org/qt/clang/llvm-project/-/commit/b05a5d09547bea535b4c26ee522ce310db118c47

Git commit f0da3dd9289e1b76da2658a0e6dad0e05842bdfd by GitHub (on behalf of Zahira Ammarguellat) on 30/07/2026 at 20:49..
Revert "[OpenMP] Restore loop variable values after loop-transformation constructs. (#212853)" (#213127)

Revert "[OpenMP] Restore loop variable values after loop-transformation
constructs. (#212853)"

This reverts commit 2d697f8562d7845d5554cc1d2cd2264401b9d68f.
 Reverting this PR. Bot is failing with:
    Failed Tests (2):
      libomptarget :: spirv64-intel :: offloading/target-tile.c
libomptarget :: x86_64-unknown-linux-gnu :: offloading/target-tile.c
https://invent.kde.org/qt/clang/llvm-project/-/commit/f0da3dd9289e1b76da2658a0e6dad0e05842bdfd

Git commit cc0f33be52a5a04fd809d6e6e6e41c0af794283d by GitHub (on behalf of Frank) on 30/07/2026 at 20:49..
[clang-format] Add SpacesInComments option for block comments (#204727)

Adds a new `SpacesInBlockComments` clang-format option to control
spacing after `/*` and before `*/` in ordinary block comments.

Supported values:

* Always: formats `/*comment*/` as `/* comment */`
* Never: formats `/* comment */` as `/*comment*/`
* Leave: preserves existing spacing

Documentation comments such as `/** ... */` and `/*! ... */`, and
parameter comments such as `/*Arg=*/`, are left unchanged.

Tests added for all option values, multiline block comments, and
excluded parameter/doc comments.

Addresses #160682
https://invent.kde.org/qt/clang/llvm-project/-/commit/cc0f33be52a5a04fd809d6e6e6e41c0af794283d

Git commit 100e8df6fc863f39e6f3e06862ee9500e859121f by GitHub (on behalf of Qiongsi Wu) on 30/07/2026 at 21:00..
[clang][DependencyScanning] Extracting a Driver-free CompilerInstaneWithContext Initializer (#211405)

This PR extracts out an initializer of `CompilerInstanceWithContext`
that does not depend on any driver code in preperation of moving the
`CompilerInstanceWithContext` into `DependencyScanningWorker.cpp` as an
implementation detail that is not exposed by any APIs.

---

<sub>Stack created with <a
href="https://github.com/github/gh-stack">GitHub Stacks CLI</a> • <a
href="https://gh.io/stacks-feedback">Give Feedback 💬</a></sub>
https://invent.kde.org/qt/clang/llvm-project/-/commit/100e8df6fc863f39e6f3e06862ee9500e859121f

Git commit 7650a43aa8a6dabe890e08d3d482aa25ae31c826 by GitHub (on behalf of Florian Hahn) on 30/07/2026 at 21:00..
[LV] Add tests for preserving branch weights through VPlan (NFC). (#213131)

Add coverage for carrying the branch weights of a predicated block from
VPlan0 through to the generated IR
https://invent.kde.org/qt/clang/llvm-project/-/commit/7650a43aa8a6dabe890e08d3d482aa25ae31c826

Git commit c836b82d088424baa8a60de63136747add192732 by GitHub (on behalf of Matsu) on 30/07/2026 at 21:02..
[mlir][OpenACC] Atomicize contended shared array reduction updates (#212971)

Example:
```fortran
!$acc parallel loop gang reduction(+:a)
do i = 1, N
  !$acc loop worker reduction(+:a)
  do j = 1, M
    a(i) = a(i) + b(j,i)
  end do
end do
```

In this code, the worker accumulator is block-shared, so every worker
updates
the same element with a plain read-modify-write and all but one partial
is lost.

Fix: make in-place updates of a block-shared array accumulator atomic,
unless
the element index varies per thread, in which case each thread owns its
element
and the plain update is already race-free.

---------

Co-authored-by: Claude Opus 5 (1M context) <[email protected]>
https://invent.kde.org/qt/clang/llvm-project/-/commit/c836b82d088424baa8a60de63136747add192732

Git commit 21d9869c206e12f1932aecff50d03f06f5a96339 by GitHub (on behalf of yebinchon) on 30/07/2026 at 21:06..
[flang] Add a pass to get OpenACC device ptr for CUDA kernel (#212299)

When a CUDA kernel is launched inside an OpenACC data region, it does
not properly get the device pointers and instead uses host data. This PR
adds a pass to get the device pointers set up by the OpenACC data
construct and pass them explicitly to the CUDA kernel.

Note: A possibly non-contiguous array argument is currently not supported. This pass will skip these cases.

---------

Co-authored-by: Yebin Chon <[email protected]>
https://invent.kde.org/qt/clang/llvm-project/-/commit/21d9869c206e12f1932aecff50d03f06f5a96339

Git commit 256a6d2807a980c1477df0ed3b6ea6763460b967 by GitHub (on behalf of Dmitry Sidorov) on 30/07/2026 at 21:10..
[AMDGPU] Use a single SubtargetPredicate for fp8/bf8 -> f32 conversions (#212888)

Add FeatureCvtFP8SDWASrcSel for the form that takes the byte from the SDWA src0_sel field and FeatureCvtFP8ByteSel for the form that takes it from a byte_sel operand. Both imply FeatureFP8ConversionInsts, and a subtarget provides one of them, so the multiclass-generated HasCvtFP8SDWASrcSel and HasCvtFP8ByteSel replace the GFX9 and GFX11Plus predicates outright.

Assisted-By: Claude Opus 5
https://invent.kde.org/qt/clang/llvm-project/-/commit/256a6d2807a980c1477df0ed3b6ea6763460b967

Git commit f279abcc818a89c2c73c305a1ce5a9a18d2215ec by GitHub (on behalf of Kewen Meng) on 30/07/2026 at 21:24..
[Offload][Test] Add llvm bin in the PATH for offload-unit suite (#213149)

This PR makes the offload-unit suite put llvm bin directory on PATH so
that tests need lld can find. It fixes the issue exposed in:
https://github.com/llvm/llvm-project/pull/212860
https://invent.kde.org/qt/clang/llvm-project/-/commit/f279abcc818a89c2c73c305a1ce5a9a18d2215ec

Git commit 2d0b45bc0a7fcb29aa77242b9262eb7c9eba5333 by GitHub (on behalf of johnnyb2543) on 30/07/2026 at 21:28..
[clang-format] Prevent re-assigning type on finalized tokens (#210763)

Prevents a finalized token inside modifyContext from being reassigned
through the setType member function by checking if the token is
finalized.

This ensures ill-defined code like does not trigger an assertion failure
during reformatting.
Fixes #210509
https://invent.kde.org/qt/clang/llvm-project/-/commit/2d0b45bc0a7fcb29aa77242b9262eb7c9eba5333

Git commit 613154323d2f06b8018065d88c2781529cf77c75 by GitHub (on behalf of forking-google-bazel-bot[bot]) on 30/07/2026 at 21:29..
[Bazel] Fixes 21d9869 (#213147)

This fixes 21d9869c206e12f1932aecff50d03f06f5a96339 (#212299).

Buildkite error link:
https://buildkite.com/llvm-project/upstream-bazel/builds?commit=21d9869c206e12f1932aecff50d03f06f5a96339

Co-authored-by: Google Bazel Bot <[email protected]>
https://invent.kde.org/qt/clang/llvm-project/-/commit/613154323d2f06b8018065d88c2781529cf77c75

Git commit 197e68dbd324fa48d45666a9c95a83303c995356 by GitHub (on behalf of Rafael Auler) on 30/07/2026 at 21:38..
Revert "[github] Move BOLT reviewers to team (#211422)" (#213141)

We haven't really being tagged in new PRs anymore, so it looks like this
is not working.

Revert for now until we can fix this, so we don't miss PRs.

This reverts commit 04f124f6151e8c8410e28aba28dc38e590e34c58.
https://invent.kde.org/qt/clang/llvm-project/-/commit/197e68dbd324fa48d45666a9c95a83303c995356

Git commit 7e35cbb1b6f5915ab732a22e83b3afc20e29181a by GitHub (on behalf of Alex MacLean) on 30/07/2026 at 21:46..
[NVPTX] Cleanup PTX virtual register encoding (NFC) (#212395)

Unify the scheme used to carry PTX virtual registers through
`MCOperand`s. The register class was encoded and decoded 
by two hand-written switchtables, one in
`NVPTXAsmPrinter::encodeVirtualRegister` and one in
`NVPTXInstPrinter::printRegName`, kept in sync only by
comment. Both now share a `VirtualRegisterKind` enum and
`getVirtualRegisterPrefix` in `NVPTXBaseInfo.h`, which also
subsumes `getNVPTXRegClassStr` and drops the stale
`%f`/`%fd` cases left over from the typed float register
classes.

Co-Authored by Opus-5.
https://invent.kde.org/qt/clang/llvm-project/-/commit/7e35cbb1b6f5915ab732a22e83b3afc20e29181a

Git commit 56a48d712006ff7d9a09eef6a86b78d4b2eec3aa by GitHub (on behalf of Thurston Dang) on 30/07/2026 at 21:59..
[msan][test] Disable UB cases in vararg_shadow.cpp (#204246)

This patch comments out the tests for char and float, which have
undefined behavior: `warning: second argument to 'va_arg' is of
promotable type 'char'/'float'; this va_arg has undefined behavior
because arguments will be promoted to 'int'/'double' [-Wvarargs]`.

The non-UB way to rewrite the tests is to use `va_arg()` with int and
double types (when the original variables are char and float), but there
are already test cases for int and double.

Note also that the float test makes an assumption that
`cast<float>(cast<double>(float))` will maintain the original shadow,
which MSan need not guarantee. In particular,
https://github.com/llvm/llvm-project/pull/204197 breaks that assumption
(which led to a buildbot breakage and revert).
https://invent.kde.org/qt/clang/llvm-project/-/commit/56a48d712006ff7d9a09eef6a86b78d4b2eec3aa

Git commit 30611cae030a654be821dfc817126568ac6d2baa by GitHub (on behalf of Adam Bzowski) on 30/07/2026 at 22:03..
[BOLT] Fix RELR addend updates for non-zero image bases (#213000)

This patch fixes an AArch64 BOLT failure exposed by LLVM commit
`fbba327208d7f6994f9a28a51dca3e913e3b444a`, which enabled packed
relative relocations (RELR) globally. BOLT incorrectly used a virtual
relocation address as a file offset when updating RELR addends,
corrupting instrumented executables when their image base was non-zero.
The observed CMake compiler-check failure was only a consequence of the
corrupted BOLT-instrumented Clang executable crashing; the defect itself
is in BOLT, not CMake.

The regression test links an AArch64 PIE with a non-zero image base and
verifies that BOLT updates the RELR addend at the correct file offset.

Assisted-by: Codex
https://invent.kde.org/qt/clang/llvm-project/-/commit/30611cae030a654be821dfc817126568ac6d2baa

Git commit 295511765718e55542519a39af949a99776325cc by Stanislav Mekhanoshin on 30/07/2026 at 22:12..
[AMDGPU] Duplicate packed fp32 instructions

These have different semantics on gfx9 and gfx12 with respect to
scalar operands.
https://invent.kde.org/qt/clang/llvm-project/-/commit/295511765718e55542519a39af949a99776325cc
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.