[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/petar-avramovic/extendedLLT-fptrunc'.
Changed from 0000000000000000000000000000000000000000 to 5b85ddc6386b40832f6d37ea74d288e49126c655
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 5a98e96135e223890cbf0640584e30c0db695ecf by GitHub (on behalf of Michael Kruse) on 16/07/2026 at 11:19..
[Flang][CMake] Use fakeflang as dispatcher (#209482)

With #203481 where `runtimes-configure` does not depend on `flang`
anymore, the following race could happen in incremental builds: While
ninja/make builds some of the libFortran*.so libraries in a
BUILD_SHARED_LIBS=ON build, CMake tries to execute flang which tries to
load the .so libraries while they are linked. This race condition can
only happen in incremental builds because before the real bin/flang is
built completely the first time, it points to fakeflang which would be
working. Only in an incremental build, would the real bin/flang already
been built created before, pointing to the currently re-built flang.
I did not think this would be possible because CMake only needs to probe
flang once and thereafter (in the incremental build) remembers the probe
result in `CMakeFiles/<version>/CMakeFortranCompiler.cmake`. CMake does
not support changing the compiler once configured and errors-out if you
try to change `CMAKE_Fortran_COMPILER`. I do not know why/when CMake is
re-probing the compiler in some incremental builds, but has been
reported to do so in #205360.

This patch avoids any replacement of build artifacts and instead decides
in fakeflang when to call real flang or to emulate the Flang
preprocessor. The decision is made based of on the FLANG_BOOTSTRAP_PROBE
environment variable that is set only in the configure step. The feature
that allows this is unfortunately only available starting in CMake 4.2.
All suppported CMake versions before CMake 4.2 use the filename
`CMakeFortranCompilerId.F`, so make the decision based on that when
using earlier versions of CMake.

Tested with CMake 3.20, 3.28, 3.31, 4.1, and 4.2.

Fixes #205360
https://invent.kde.org/qt/clang/llvm/-/commit/5a98e96135e223890cbf0640584e30c0db695ecf

Git commit 57ceb12780157d68f7c14d5ed8f18bc87dc768fd by GitHub (on behalf of Wenju He) on 16/07/2026 at 11:21..
[DebugInfo][NFC] Fix PDB/Native/LinePrinter.h build warning -Wmicrosoft-unqualified-friend (#209715)

Fix build warning on Windows, which is error under -Werror: unqualified
friend declaration referring to type outside of the nearest enclosing
namespace is a Microsoft extension; add a nested name specifier
[-Wmicrosoft-unqualified-friend]
https://invent.kde.org/qt/clang/llvm/-/commit/57ceb12780157d68f7c14d5ed8f18bc87dc768fd

Git commit 5e4f44041d32234ea8227cbb2473173bd5edfc1c by GitHub (on behalf of Mariusz Sikora) on 16/07/2026 at 11:22..
[AMDGPU] Clean up GFX13 feature list (#208416)

GFX13 features were previously mostly inherited from GFX12/GFX1250.
- define an explicit gfx13 target parser feature list, including
gfx13-insts and cvt-pknorm-vop3-insts.
- remove transpose load F4/F6 support from gfx13 (previously copied from
gfx12)
https://invent.kde.org/qt/clang/llvm/-/commit/5e4f44041d32234ea8227cbb2473173bd5edfc1c

Git commit 3faf46d218d3cb888c818b3e99d7e05b06ca68fa by GitHub (on behalf of Lang Hames) on 16/07/2026 at 11:32..
[orc-rt] Session::OnCallControllerReturnFn, comments. NFC. (#210035)

Rename Session::OnCallHandlerCompleteFn to
Session::OnControllerCallReturnFn and add a comment to clarify its
purpose: This callback is used to handle retured values from calls to
the controller.
https://invent.kde.org/qt/clang/llvm/-/commit/3faf46d218d3cb888c818b3e99d7e05b06ca68fa

Git commit 8866215f30953c7df146276ac10753de941b1fcb by GitHub (on behalf of mkovacevic99) on 16/07/2026 at 11:35..
[Orc] Update the comment so it doesn't mention TargetTriple argument that no longer exists (#210023)

Completes the fix for the
https://github.com/llvm/llvm-project/issues/80097
https://invent.kde.org/qt/clang/llvm/-/commit/8866215f30953c7df146276ac10753de941b1fcb

Git commit 3d87de86a24d1bff2821e4eb2f2d28e58605a394 by GitHub (on behalf of Philip742) on 16/07/2026 at 11:53..
[mlir][tosa] Add support for MXFP in CONCAT (#209719)

Adds support to profile compliance for MXFP variants of CONCAT

Signed-off-by: Philip Wilkinson <[email protected]>
https://invent.kde.org/qt/clang/llvm/-/commit/3d87de86a24d1bff2821e4eb2f2d28e58605a394

Git commit 18fc5a8adbe5dba7dc281bacdb149e95dc7dc1be by GitHub (on behalf of Pengcheng Wang) on 16/07/2026 at 12:12..
[TableGen][RISCV] Generate pre/post-RA statistics for macro fusions (#209394)

Teach `MacroFusionPredicatorEmitter` to emit `Statistic` counters
recording how often each macro fusion is matched, and wire them
up for RISC-V.

This is based on the idea in #186499, generalized so counters are
generated automatically for any target using the emitter.

Because both the pre-RA and post-RA schedulers run MacroFusion,
a single counter would conflate the two. Counters are split into
pre-RA/post-RA variants, distinguished by the `NoVRegs` property,
addressing the double-counting concern from #186499:

```cpp
  STATISTIC(NumTuneLDADDFusionPreRA,  "Times TuneLDADDFusion Triggered (pre-ra)");
  STATISTIC(NumTuneLDADDFusionPostRA, "Times TuneLDADDFusion Triggered (post-ra)");
  ...
    if (SecondMI.getMF()->getProperties().hasNoVRegs())
      ++NumTuneLDADDFusionPostRA;
    else
      ++NumTuneLDADDFusionPreRA;
```

Besides, RISC-V counters use the `riscv-macro-fusion` debug type.

Co-authored-by: Sam Elliott <[email protected]>
Assisted-by: TRAE CLI (DeepSeek V4 Pro)
https://invent.kde.org/qt/clang/llvm/-/commit/18fc5a8adbe5dba7dc281bacdb149e95dc7dc1be

Git commit db7356dde8312a86e79ec0d7b7f844878a1a743c by GitHub (on behalf of Petr Hosek) on 16/07/2026 at 12:15..
[libc++] Partially revert #208330 (#209928)

We found out that the new mechanism for detecting overriden functions
does not support Arm Pointer Authentication (PAuth). Addressing this
limitation is going to require changes to Clang. In the meantime, we
switched back to the old mechanism when PAuth is enabled.
https://invent.kde.org/qt/clang/llvm/-/commit/db7356dde8312a86e79ec0d7b7f844878a1a743c

Git commit 3bf897eaac63ea4e6b8c4f77d84f833f63167e3d by GitHub (on behalf of Alexey Bataev) on 16/07/2026 at 12:25..
[SLP][NFC]Add a test with the non-profitable instcount check across the loops, NFC



Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/210045
https://invent.kde.org/qt/clang/llvm/-/commit/3bf897eaac63ea4e6b8c4f77d84f833f63167e3d

Git commit ee5cff53cf4f0c23254bda94c7249e4ea008d457 by GitHub (on behalf of Kseniya Tikhomirova) on 16/07/2026 at 12:27..
[libsycl] Fix mock error in unittest helper (#209726)

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

Git commit 66e8cc5ec83d7ec5e506c53b11c1d22887c0c418 by GitHub (on behalf of Florian Hahn) on 16/07/2026 at 12:51..
[ConstraintElim] Handle (X | Y) >s -1 as X >s -1 && Y >s -1. (#209743)

InstCombine canonicalizes X >=s 0 && Y >=s 0 as (X | Y) >=s 0. Teach
ConstraintElimination to recover the signed-positive information by
looking through compares of binary ORs.

Alive2 Proof: https://alive2.llvm.org/ce/z/sqNF8M

Compile-time impact is neutral

https://llvm-compile-time-tracker.com/compare.php?from=88acd428fd72f44312408c3fb6165992fb3b043a&to=a2aa4cacb953b32d6319939b9aee3226a7294334&stat=instructions%3Au

PR: https://github.com/llvm/llvm-project/pull/209743
https://invent.kde.org/qt/clang/llvm/-/commit/66e8cc5ec83d7ec5e506c53b11c1d22887c0c418

Git commit 6388cfc492e82702dfc1aa965adab7e85c7ad3d8 by GitHub (on behalf of Nikita Popov) on 16/07/2026 at 13:23..
[AMDGPU] Add missing FMF flags in tests (NFC) (#210055)

The flags should be on the select, not the fcmp for nsz to have
any effect.
https://invent.kde.org/qt/clang/llvm/-/commit/6388cfc492e82702dfc1aa965adab7e85c7ad3d8

Git commit 334c397ed5b115a5415ea7505a3be837db2609f2 by Petar Avramovic on 16/07/2026 at 15:47..
AMDGPU/GlobalISel: Handle G_BITCAST for 16 bit extendedLLTs

Handle bitcast between i16 and f16/bf16.
For true16 this was already legal, make it legal in regbanklegalize as well.
For non-true16 widen it using G_ANYEXT to i32 and G_TRUNC to dst.
The "i32 G_ANYEXT f16/bf16" and "f16/bf16 G_TRUNC i32" are already legal,
for example these are generated by common CallLowering argument lowering.
https://invent.kde.org/qt/clang/llvm/-/commit/334c397ed5b115a5415ea7505a3be837db2609f2

Git commit 57b77ab0ba71c10c9b9241956c37f7f407b53109 by Petar Avramovic on 16/07/2026 at 15:47..
AMDGPU/GlobalISel: Switch legalizer intrinsic lowering to extended LLTs

Affects various buffer intrinsics.
https://invent.kde.org/qt/clang/llvm/-/commit/57b77ab0ba71c10c9b9241956c37f7f407b53109

Git commit 8641737c44a81bd24205228d699a44322cdcb3af by Petar Avramovic on 16/07/2026 at 15:48..
AMDGPU/GlobalISel: Fix G_UNMERGE_VALUES lowering for extended LLTs

Use integer type for bit twiddling instead of scalar.
https://invent.kde.org/qt/clang/llvm/-/commit/8641737c44a81bd24205228d699a44322cdcb3af

Git commit 01ef99e7a9ed398c6f01e8b3f0ae8bae665b73d2 by Petar Avramovic on 16/07/2026 at 15:53..
AMDGPU/GlobalISel: Fix G_MERGE_VALUES lowering for extended LLTs

Use integer type for bit twiddling instead of scalar.
https://invent.kde.org/qt/clang/llvm/-/commit/01ef99e7a9ed398c6f01e8b3f0ae8bae665b73d2

Git commit 608d7410f85ca7a683c7226fc6ac608c4d24fba5 by Petar Avramovic on 16/07/2026 at 15:54..
AMDGPU/GlobalISel: Stop using changeTo in legaizer actions

Use changeElementSizeTo or changeElementCountTo to preserve extended LLT.
https://invent.kde.org/qt/clang/llvm/-/commit/608d7410f85ca7a683c7226fc6ac608c4d24fba5

Git commit b7d657282e539864d8d8a0256690316124a55ea8 by Petar Avramovic on 16/07/2026 at 16:02..
AMDGPU/GlobalISel: Fix legalizer lowering for G_EXTRACT/INSERT_VECTOR_ELT

Use LLT::integer in bit twiddling lowering for extract/insert vector element.
https://invent.kde.org/qt/clang/llvm/-/commit/b7d657282e539864d8d8a0256690316124a55ea8

Git commit 5cdb956267bea435187562b6d4d27f95ae1bc402 by Petar Avramovic on 16/07/2026 at 16:02..
AMDGPU/GlobalISel: Explicitly widen scalar to i32 for load and store

Affects f16 and bf16. Earlier, they were widened to f32 and s32 respectively.
The actual error was the artifact combiner creating a copy between f32/i32
which fails in the machine verifier. Maybe we could create a bitcast there.
However i32 is more efficient for us and matches well with how argument
lowering keeps f16 and bf16 in i32 copies to/from physical registers.
Also starting from f16 store, G_STORE %0(f16), %1(p1) :: (store (f16),
and doing widen scalar to 32 bit type, i32 makes more sense since store
will store 16 least significant bits G_STORE %0(i32), %1(p1) :: (store (f16)
compared to G_STORE %0(f32), %1(p1) :: (store (f16), which looks incorrect if
we assume input was really in f32 format.
https://invent.kde.org/qt/clang/llvm/-/commit/5cdb956267bea435187562b6d4d27f95ae1bc402

Git commit ae56abd95ecef0e76ffb49f4322b6b771088697f by Petar Avramovic on 16/07/2026 at 16:06..
AMDGPU/GlobalISel: Use integer as MMO type for loads and stores lowering

We could get away with just the type from MMO in most cases, but MMO splitting
creates MMO with LLT::scalar and we prefer integer.
https://invent.kde.org/qt/clang/llvm/-/commit/ae56abd95ecef0e76ffb49f4322b6b771088697f

Git commit 3a3e8d5df92ce4cef895cda605e7b03a6dd7131a by Petar Avramovic on 16/07/2026 at 16:07..
AMDGPU/GlobalISel: Fix extending load narrow scalar

isAnyScalar is explicit LLT::scalar check but we want to narrow scalar
integer types as well.
https://invent.kde.org/qt/clang/llvm/-/commit/3a3e8d5df92ce4cef895cda605e7b03a6dd7131a

Git commit bfa63d4aaa6df865eff6523d0808f88e048bbff6 by Petar Avramovic on 16/07/2026 at 16:11..
AMDGPU/GlobalISel: Use integers for read-any-lane split type
https://invent.kde.org/qt/clang/llvm/-/commit/bfa63d4aaa6df865eff6523d0808f88e048bbff6

Git commit 5b85ddc6386b40832f6d37ea74d288e49126c655 by Petar Avramovic on 16/07/2026 at 16:13..
GlobalISel: Use extended LLTs in f64 to f16 fptrunc lowering
https://invent.kde.org/qt/clang/llvm/-/commit/5b85ddc6386b40832f6d37ea74d288e49126c655
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.