[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/main'. Changed from a891a5c40c7d2ed62d97fc6563cf256e7bab3ffb to bf7b5a0fedb924e7f3db3423cbeb97c343c37b25 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 002deaabe67c2a586a36f9ac806ec83d1927a43d by GitHub (on behalf of Benedek Kaibas) on 24/07/2026 at 23:15.. [analyzer] Match dangling subobjects by their base region in DanglingPtrDeref (#211552) Currently the `DanglingPtrDeref` checker only records the whole object's region as deallocated. However, dangling pointers often refer to subobjects (e.g., a struct field or an element of an array). With the change in this PR, `isDeallocated` now checks whether a region's base region is in the `DeallocatedSourceSet`. https://invent.kde.org/qt/clang/llvm/-/commit/002deaabe67c2a586a36f9ac806ec83d1927a43d Git commit 6d300116c0db7db964f2c0f8d24247a6609d815b by GitHub (on behalf of Rashmi Mudduluru) on 24/07/2026 at 23:29.. [Webkit Checkers][SaferCpp] Fix MemoryUnsafeCastChecker to precisely exclude `*this` casts (#210180) Exclude casts precisely matching `this` and `*this` (through parens/implicit casts), without matching member accesses like `this->m_field`. rdar://173770064 https://invent.kde.org/qt/clang/llvm/-/commit/6d300116c0db7db964f2c0f8d24247a6609d815b Git commit 9a606af2f2dcd6f0c1321493623911428d000d94 by GitHub (on behalf of Henry Jiang) on 24/07/2026 at 23:43.. Revert "[X86] Reuse already-materialized values when forming LEAs (#2… (#211958) …10739)" This reverts commit 580604f1f3cbdd643a53e086265140a0b2805c5c. https://invent.kde.org/qt/clang/llvm/-/commit/9a606af2f2dcd6f0c1321493623911428d000d94 Git commit efc78d2029b9f716de4546ed88571616d91e826c by GitHub (on behalf of Alexey Samsonov) on 24/07/2026 at 23:57.. [libc] Add symbolic constants for si_code values. (#211945) Extend SIGCHLD-specific `si_code` values, already available in `signal-macros.h` with Linux values for the rest of the signal-specific codes specified in the POSIX.1-2024. https://invent.kde.org/qt/clang/llvm/-/commit/efc78d2029b9f716de4546ed88571616d91e826c Git commit 5f2abdde629626031a9c95da5987ff56d88a4b51 by GitHub (on behalf of Valentin Clement (バレンタイン クレメン)) on 25/07/2026 at 01:07.. [flang][cuda] Accept statement function in device code (#211957) Statement functions are inlined during lowering, so they should not be treated as host procedure calls. Recursively validate their expressions to reject any host procedure calls within the body. https://invent.kde.org/qt/clang/llvm/-/commit/5f2abdde629626031a9c95da5987ff56d88a4b51 Git commit 571a1deb31125780ffb86fbae027b03efd0dcdd8 by GitHub (on behalf of Fangrui Song) on 25/07/2026 at 01:57.. [LoopInfo] Store blocks using Euler tour representation (#211485) Block list construction appends each block to all enclosing loops (O(depth) per block), and each loop owns a separately allocated vector. Switch to an Euler tour representation: one BlockLayout array per LoopInfo holding the in-loop blocks in a loop-contiguous reverse postorder, each loop's list a [begin, end) slice of it, subloop slices nested inside their parent's. Headers remain first; `SubLoops`/`TopLevelLoops` orders are unchanged. A few tests observe the order and are updated. (Previously a loop's list was the function's reverse postorder restricted to its members, so a subloop's blocks were interleaved with the parent's own blocks at their RPO positions.) Mutations first copy a borrowed slice into private storage from LoopInfo's allocator. `contains(BlockT *)` remains map-based: a materialized loop's slice is not a membership test. This copy is rare: across default<O2> over dagcombiner and sqlite3, only 12--14% of loops built by analyze() are ever mutated; the rest keep the borrowed slice. AllocateLoop() no longer forwards constructor arguments; analyze() uses allocateLoop(Header), removing the header-taking loop constructors. Aided by Claude Fable 5 https://invent.kde.org/qt/clang/llvm/-/commit/571a1deb31125780ffb86fbae027b03efd0dcdd8 Git commit 861adf6f34727fbcc66c64ddba916ac0bb0423c2 by GitHub (on behalf of Jordan Rupprecht) on 25/07/2026 at 01:57.. [lldb] Fix heap-use-after-free in FileSpec usage (#211908) After #211394, `FileSpec` stores m_filename as a `SmallString` instead of `ConstString`. When the `FileSpec` goes out of scope / is destructed, a `StringRef` pointing to m_filename is now invalid. Previously it would have worked even after `FileSpec` goes out of scope since `ConstString` stores the string in a global buffer which is never destructed. This causes heap-use-after-free in `CommandInterpreter` when we use the result of `GetFilename()` on a temporary `FileSpec`. Store the result of `HostInfo::GetProgramFileSpec()` as a variable to prevent it from going out of scope before we're able to call `GetHomeInitFile()`. Although #211394 introduces this failure, technically speaking this is an existing bug, it was just masked because of how `FileSpec` used to use `ConstString` to force a long lifetime. https://invent.kde.org/qt/clang/llvm/-/commit/861adf6f34727fbcc66c64ddba916ac0bb0423c2 Git commit 5295852db2735e884c657b9109446157f7b84ea3 by GitHub (on behalf of Chuanqi Xu) on 25/07/2026 at 02:39.. [mlir] [vector] Allow element/broadcast re-order for FMA if the source is a vector (#211208) The diagnostic says the transform is not performed as the source may be a scalar. But we can make it if we can check the source is not a scalar. AI assisted. https://invent.kde.org/qt/clang/llvm/-/commit/5295852db2735e884c657b9109446157f7b84ea3 Git commit cf9545250838bcb35e18ef872a89b790e7e893c3 by GitHub (on behalf of Jianhui Li) on 25/07/2026 at 03:08.. [mlir][xegpu] Make convert_layout input_layout optional (#210833) Make the `input_layout` attribute of `xegpu.convert_layout` optional. When it is not set, the effective input layout defaults to `target_layout`, i.e. the source is assumed to already be in the target distribution. assisted-by-Claude Co-authored-by: Claude Opus 4.8 <[email protected]> https://invent.kde.org/qt/clang/llvm/-/commit/cf9545250838bcb35e18ef872a89b790e7e893c3 Git commit c64a5b0c4cbf01df2a29cc2175b362c76e360373 by GitHub (on behalf of Jannick Kremer) on 25/07/2026 at 03:38.. [libclang/python] Remove CompletionString.AvailabilityKindCompat (#210682) This completes the fourth step of https://github.com/llvm/llvm-project/pull/156680 This change is a follow-up to https://github.com/llvm/llvm-project/pull/160296, following the release branching, to ensure a one release-cycle deprecation period. --------- Co-authored-by: Vlad Serebrennikov <[email protected]> https://invent.kde.org/qt/clang/llvm/-/commit/c64a5b0c4cbf01df2a29cc2175b362c76e360373 Git commit 339792f456abaae623c22789df6d1e1c59288839 by GitHub (on behalf of Twice) on 25/07/2026 at 03:42.. [MLIR][Python] Support IsIsolatedFromAbove trait for python-defined operations (#211849) This PR adds dynamic `IsIsolatedFromAbove` trait support and exposes it to Python as `IsIsolatedFromAboveTrait`. The test verifies that a region with the trait cannot capture an SSA value from above, while a region without the trait can. Assisted by Codex/GPT 5.6 Sol (for writing test cases). https://invent.kde.org/qt/clang/llvm/-/commit/339792f456abaae623c22789df6d1e1c59288839 Git commit bf7b5a0fedb924e7f3db3423cbeb97c343c37b25 by GitHub (on behalf of Sirui Mu) on 25/07/2026 at 04:22.. [CIR] Add support for atomic fmaximum/fminimum/fmaximumnum/fminimumnum (#211845) This patch adds CIR support for the following atomic builtin functions: - `__atomic_fetch_fmaximum` - `__atomic_fetch_fminimum` - `__atomic_fetch_fmaximumnum` - `__atomic_fetch_fminimumnum` The scoped versions of these atomic builtin functions are supported as well. Specifically, this patch contains the following changes: - It updates the `cir.atomic.fetch` operation and adds new fetch operators including `maximum`, `minimum`, `maximumnum`, and `minimumnum`. These operators accept floating-point inputs only. - It updates the LLVM lowering of the `cir.atomic.fetch` operation. The LLVM lowering now will lower `maximum`, `minimum`, `maximumnum`, and `minimumnum` atomic fetch operators to the corresponding LLVM `atomicrmw` operations, which are `fmaximum`, `fminimum`, `fmaximumnum`, and `fminimumnum`, respectively, aligning with the OGCG behavior. - It updates the CIRGen path for atomic operations and add supports for these atomic builtin functions. Assisted-by: GitHub Copilot / gpt-5.4 xhigh https://invent.kde.org/qt/clang/llvm/-/commit/bf7b5a0fedb924e7f3db3423cbeb97c343c37b25