[qt/clang/llvm-project]: Summary of bulk changes made
KDE Git Services - Bulk Change <[email protected]> Wed, 5 Aug 2026 00:14:46 +0000 (UTC)
| 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/chinmaydd/permlanee'. Changed from 0000000000000000000000000000000000000000 to c314303952c2e574dd0c17f8f5a4211954cbea6b 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 7609cb83bf5fc5c25e287770db277dbb34e674b8 by GitHub (on behalf of Finn Plummer) on 04/08/2026 at 17:33.. [DirectX] Prevent `dxil-resource-access` from inserting a resource access in-between phi nodes (#211343) The pass can incorrectly place a load/store within the phi nodes at top of the basic block: https://godbolt.org/z/x5Ec4GWGT This is resolved by updating `replaceHandleWithIndices` to adjust the insertion point when the ptr comes from a phi node. Resolves, in part, https://github.com/llvm/llvm-project/issues/211121 Assisted by: Claude Opus 4.8 https://invent.kde.org/qt/clang/llvm-project/-/commit/7609cb83bf5fc5c25e287770db277dbb34e674b8 Git commit 5382f7d64ff59d198091ffd263d7adecf5d7dd5a by GitHub (on behalf of Benjamin Maxwell) on 04/08/2026 at 17:48.. [CostModel][AArch64] Add initial costs for `masked.compressstore` (#213712) This adds an initial cost model for `masked.compressstore`. The tests are based on `masked_expand_load.ll`, which covers all configurations for the `expand`/`compact` instructions. Note: Right now, we only report valid costs for `masked.compressstore` operations that can be lowered with SVE1 (as that's all we handle ISEL for at the moment). https://invent.kde.org/qt/clang/llvm-project/-/commit/5382f7d64ff59d198091ffd263d7adecf5d7dd5a Git commit af14456a2bac55026b2d57cbf14b3905c452b8a4 by GitHub (on behalf of arsnyder16) on 04/08/2026 at 17:52.. [OpenMP] Simplify generic microtask dispatch (#214004) Replace the generic microtask dispatcher's handwritten function-pointer types and calls with a variadic-template helper and a macro for each supported argument count. The dispatcher still casts each microtask to the exact fixed-arity signature required by platforms such as WebAssembly. This is intended as a refactor only: the existing limit of 15 microtask arguments and the diagnostic for larger argument counts remain unchanged. This reduces the repetitive code and makes future changes to the supported argument range easier to review. Split out from #211071 https://invent.kde.org/qt/clang/llvm-project/-/commit/af14456a2bac55026b2d57cbf14b3905c452b8a4 Git commit 2a2adde35937667dd93dc5594ac5d52842e116d2 by GitHub (on behalf of Chinmay Deshpande) on 04/08/2026 at 17:56.. [AMDGPU][GISel] Add RegBankLegalize rules for llvm.amdgcn.fdot2.bf16.bf16 (#214013) https://invent.kde.org/qt/clang/llvm-project/-/commit/2a2adde35937667dd93dc5594ac5d52842e116d2 Git commit 500962298d624a74ade58c2aeb65313fb32dda5a by GitHub (on behalf of Alexey Bataev) on 04/08/2026 at 17:57.. [InstCombine]Fold fcmp+select to min/max if its zero sign is missing Look through phis, chained selects and the loop back edge to the select itself and fold if no use can observe the sign of zero of the result. This restores the fold for loop-carried and unrolled running min/max values (fcsel -> fminnm on AArch64) lost to the signed zero handling fix in matchSelectPattern (#210077). Reviewers: nikic, dtcxzyw Pull Request: https://github.com/llvm/llvm-project/pull/213133 https://invent.kde.org/qt/clang/llvm-project/-/commit/500962298d624a74ade58c2aeb65313fb32dda5a Git commit 70ecc5bb62187ca70e6fe4e563dbd60f88c2e7a0 by GitHub (on behalf of Timur Golubovich) on 04/08/2026 at 17:58.. Revert "[GlobalISel] Combine merge-unmerge with mixed scalar and vector types" (#214010) Reverts llvm/llvm-project#213086 https://invent.kde.org/qt/clang/llvm-project/-/commit/70ecc5bb62187ca70e6fe4e563dbd60f88c2e7a0 Git commit 6326f14cdc12babfdc4359f5ddd4dfcd66b53f33 by GitHub (on behalf of Adam Smith) on 04/08/2026 at 18:03.. [CIR] Lower variadic calls in CallConvLowering for x86_64 (#213315) CallConvLowering classified each function once from its declared signature and reused that classification at every call site. An argument passed through an ellipsis has no entry in the callee's parameter list, so on x86_64 an ellipsis argument that needed an extension attribute, a register coercion, or a byval slot was emitted unchanged whenever the callee's declared parameters happened to need no rewrite, and reported NYI when they did. An ellipsis argument competes for the same registers as a declared one, so the same two-eightbyte record goes in a register pair early in the list and byval once the integer registers are gone. Variadic call sites under the x86_64 driver are now classified from the call's own operand types, and the declared parameter count reaches `llvm::abi::FunctionInfo::create` as its `NumRequired` argument, which is what lets the classifier tell a named argument from one passed through the ellipsis. Today that flag only decides whether a large vector goes in a register, and the CIR type bridge admits no vector types, so the boundary changes no output yet. `prependIndirectCallee` also rebuilt the callee pointer's pointee without `isVarArg`, dropping the ellipsis from a lowered indirect call and with it the vector-register count the x86_64 SysV ABI passes in AL. A void return and a return the ABI drops, such as an empty record, both classify as `Ignore` while needing opposite treatment, so `FunctionClassification` now records which one it was where the classification is produced. `needsRewrite` moves from the CIR rewriter to `mlir/include/mlir/ABI/ABIRewriteContext.h`, over a new per-argument `isPassThrough`, so the pass and the rewriter share one definition. Two things are newly diagnosed rather than newly broken. The operand-count check moves ahead of the pass-through early return, so a call whose operand count disagrees with a `no_proto` callee's declaration is reported instead of lowered with operands the classification never covered. And the indirect-call walk visits `cir::CIRCallOpInterface` rather than only `cir.call`, so a variadic indirect `cir.try_call` is accounted for, and one that needs a rewrite is reported instead of left as written while the signature around it is coerced. A non-variadic indirect `cir.try_call` is filtered out where the walk collects, since rewriting one is unimplemented either way and that gap has nothing to do with the ellipsis. Reported NYI: variadic indirect calls that need a rewrite, variadic calls under the other drivers, and an ellipsis argument whose ABI coercion the type bridge cannot represent. https://invent.kde.org/qt/clang/llvm-project/-/commit/6326f14cdc12babfdc4359f5ddd4dfcd66b53f33 Git commit c314303952c2e574dd0c17f8f5a4211954cbea6b by Chinmay Deshpande on 04/08/2026 at 20:26.. [AMDGPU][GlobalISel] RegBankLegalize rules for amdgcn_permlane16 https://invent.kde.org/qt/clang/llvm-project/-/commit/c314303952c2e574dd0c17f8f5a4211954cbea6b