[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/petar-avramovic/extendedLLT-widen-load-store'. Changed from 0000000000000000000000000000000000000000 to 5cdb956267bea435187562b6d4d27f95ae1bc402 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-project/-/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-project/-/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-project/-/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-project/-/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-project/-/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-project/-/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-project/-/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-project/-/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-project/-/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-project/-/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-project/-/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-project/-/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-project/-/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-project/-/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-project/-/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-project/-/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-project/-/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-project/-/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-project/-/commit/5cdb956267bea435187562b6d4d27f95ae1bc402