[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/alexey-bataev/spr/slp-gather-operands-of-associative-binary-chains-into-one-node'. Changed from 930327eb5a608f52d7663a26e7463176fc99a104 to 2b43f724c974ad2730b3b4627fed16caa85b6c46 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 424fec2368d615dff78b4167e78e9bbb06fc4214 by GitHub (on behalf of Jessica Clarke) on 16/07/2026 at 13:36.. [NFC][test][AliasSet] Canonicalise memset.ll's overload suffices (#210059) The second overload suffix here corresponds to the type of the length, the third argument, which is an i64 not an i32. Canonicalise this to avoid confusion from inconsistency. Whilst here, fix the whitespace used to align the arguments in the intrinsic declarations, a remnant of losing the two characters in "i8" when migrating to opaque pointers. Fixes: 9f0916129024 ("[AST] Add test coverage of memsets") Fixes: ac924305793c ("[AliasSet] Convert tests to opaque pointers (NFC)") https://invent.kde.org/qt/clang/llvm/-/commit/424fec2368d615dff78b4167e78e9bbb06fc4214 Git commit 006d13e206401545c011028d85749071acdc5326 by GitHub (on behalf of Alex Duran) on 16/07/2026 at 13:45.. [OFFLOAD][L0][NFC] Cleanup dead code (#210060) As we have done several refactorings lately, some dead code/data was left behind inadvertedly. This is just cleaning it up. https://invent.kde.org/qt/clang/llvm/-/commit/006d13e206401545c011028d85749071acdc5326 Git commit 6ba12f1878384fa0d5be092b511f67e7e808772b by GitHub (on behalf of Simon Pilgrim) on 16/07/2026 at 13:47.. [X86] fold-signbit-reduction-cmp.ll - test for each x86-64 cpu level (#210051) https://invent.kde.org/qt/clang/llvm/-/commit/6ba12f1878384fa0d5be092b511f67e7e808772b Git commit 26c200d88e720fa88e8692ace13a493696ac591f by GitHub (on behalf of Ayokunle Amodu) on 16/07/2026 at 13:53.. [CIR][AMDGPU] Add support for AMDGCN sin builtins (#197784) Adds codegen for the following AMDGCN sin builtins: - __builtin_amdgcn_sinf (float) - __builtin_amdgcn_sinh (half) - __builtin_amdgcn_sin_bf16 (bfloat16) These are lowered to the corresponding `llvm.amdgcn.sin` intrinsic. https://invent.kde.org/qt/clang/llvm/-/commit/26c200d88e720fa88e8692ace13a493696ac591f Git commit 8739d89c4c2475eefc4638882311515fc67f9f9b by GitHub (on behalf of Yuan Suo) on 16/07/2026 at 14:01.. [LifetimeSafety] Introduce buildOriginFlowChain to use-after-invalidation (#208891) After completing the implementation of `buildOriginFlowChain`, we should integrate it into the remaining diagnostics. I started with `use-after-invalidation` because there is already an overload of `buildOriginFlowChain` for `UseFact`. While testing, I noticed the following diagnostics: ```txt test.cpp:9:23: note: result of call to 'begin<std::vector<int>>' aliases the storage of parameter 'v' 9 | auto it = std::find(std::begin(v), std::end(v), 3); // expected-warning {{parameter 'v' is later invalidated}} \ | ^~~~~~~~~~~~~ test.cpp:9:13: note: result of call to 'find<__gnu_cxx::__normal_iterator<int *, std::vector<int>>, int>' aliases the storage of parameter 'v' 9 | auto it = std::find(std::begin(v), std::end(v), 3); // expected-warning {{parameter 'v' is later invalidated}} \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ``` I think these diagnostics could be made clearer, but I'd prefer to address that in a separate PR. --------- Signed-off-by: Yuan Suo <[email protected]> https://invent.kde.org/qt/clang/llvm/-/commit/8739d89c4c2475eefc4638882311515fc67f9f9b Git commit 19595357e32b36383a025fddaaf8c38f90658b7b by GitHub (on behalf of Simon Pilgrim) on 16/07/2026 at 14:05.. [X86] combineAdd - remove unnecessary add(a,concat(vpmaddwd(x,y),vpmaddwd(z,w))) -> vpdpwssd(a,concat(x,z),concat(y,w)) fold (#209838) We already handle vpmaddwd concatenation in combineConcatVectorOps - but 512-bit vpmaddwd is only available on BWI targets, which was missing from the tests Technically if there's a target that has AVX512VNNI but not BWI, then this fold would be useful, but there's no such target and there's a limit to "what if" optimisations we really need. A small attempt at cleaning out some not very useful code from X86ISelLowering.cpp - I'm intending to do a lot more of this for 24.x / #143088 https://invent.kde.org/qt/clang/llvm/-/commit/19595357e32b36383a025fddaaf8c38f90658b7b Git commit e3d3b3b0cf3672480d6f781a9726cec1e7983d14 by GitHub (on behalf of DylanFleming-arm) on 16/07/2026 at 14:20.. [libc][mathvec] Add loop over scalar for unary FP32 (#199273) Adds all FP32 unary functions currently supported in scalar LLVM LIBM to LIBMVEC as loop over scalars. Includes some cleanup of existing mathvec testing infrastructure https://invent.kde.org/qt/clang/llvm/-/commit/e3d3b3b0cf3672480d6f781a9726cec1e7983d14 Git commit 1cb7e838cd47ecad4050948c0c907ecb1f466ac3 by GitHub (on behalf of Jay Foad) on 16/07/2026 at 14:32.. [AMDGPU] Simplify some isVALU calls. NFC. (#210057) https://invent.kde.org/qt/clang/llvm/-/commit/1cb7e838cd47ecad4050948c0c907ecb1f466ac3 Git commit 122efb26893f7e214d0223615c3a4abcc0ac7796 by GitHub (on behalf of Nikolas Klauser) on 16/07/2026 at 14:46.. [libc++] Optimize std::is_heap_until (#209141) Fixes #208299 https://invent.kde.org/qt/clang/llvm/-/commit/122efb26893f7e214d0223615c3a4abcc0ac7796 Git commit 6e7ff09291652cc784a095707029852e249902f9 by GitHub (on behalf of Jay Foad) on 16/07/2026 at 14:51.. [AMDGPU] Improve debug printing of regunits in SIInsertWaitcnts (#210066) Use the standard printRegUnit helper. https://invent.kde.org/qt/clang/llvm/-/commit/6e7ff09291652cc784a095707029852e249902f9 Git commit c7a5b9c0ddd1a5e89a3e8b5a79a916f03e0689b7 by GitHub (on behalf of Sean Clarke) on 16/07/2026 at 14:53.. [LoopIdiomRecognize] Enable clmul optimization for CRC loops (#203405) The current `optimizeCRCLoop` function always optimizes CRC loops to use a 256-entry Sarwate lookup table to process a byte at a time (except on Hexagon and with optsize). However, some targets are able to process larger chunks of CRC data with carry-less/polynomial multiplication instructions. Implement this approach in IR for such targets using the `llvm.clmul` intrinsic. (Only with optsize for the moment, though.) Like the current CRC loop optimization, this does not apply to the Hexagon target, despite it having a `pmpyw` instruction. Assisted-by: Claude Opus 4.8 https://invent.kde.org/qt/clang/llvm/-/commit/c7a5b9c0ddd1a5e89a3e8b5a79a916f03e0689b7 Git commit 73aa9102362f07e2f8fc537b3d2f72062d4a1e68 by GitHub (on behalf of Kseniya Tikhomirova) on 16/07/2026 at 14:54.. [libsycl] Implement nd_range kernel submissions (#206505) This PR adds core SYCL 2020 nd_range kernel submissions (including nd_item, group, and sub_group). Assisted with GH Copilot. --------- Signed-off-by: Tikhomirova, Kseniya <[email protected]> https://invent.kde.org/qt/clang/llvm/-/commit/73aa9102362f07e2f8fc537b3d2f72062d4a1e68 Git commit 2b43f724c974ad2730b3b4627fed16caa85b6c46 by Alexey Bataev on 16/07/2026 at 15:03.. Rebase Created using spr 1.3.7 https://invent.kde.org/qt/clang/llvm/-/commit/2b43f724c974ad2730b3b4627fed16caa85b6c46