[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/steakhal/ssaf/virtual-method-override-relation'. Changed from 4f0fdb36cc99b4920e0431e7047ff3948c8b4278 to 5e98d1a82e052ea50f1736984fdbbe161712d6d4 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 b6746a33af2b6e7daf29104bef4bd5491bcfb1f6 by GitHub (on behalf of richardmilles) on 07/08/2026 at 11:18.. [clang-tidy][docs] Normalize fuchsia check documentation links (#214697) Use stable fuchsia.dev URLs without `?hl=en` and add the missing reference on `fuchsia-temporary-objects`. Fixes #62334 https://invent.kde.org/qt/clang/llvm-project/-/commit/b6746a33af2b6e7daf29104bef4bd5491bcfb1f6 Git commit bc495da845041056e9a5892816d7fc214e371716 by GitHub (on behalf of Chennes) on 07/08/2026 at 11:18.. [SelectionDAG] Fold constant PARTIAL_REDUCE_SMLA/UMLA/SUMLA nodes (#210351) This PR implements constant folding for `ISD::PARTIAL_REDUCE_SMLA`, `ISD::PARTIAL_REDUCE_UMLA`, and `ISD::PARTIAL_REDUCE_SUMLA` when their operands are constant `BUILD_VECTOR`s. The fold computes the partial reduction using `APInt` arithmetic and returns a folded `BUILD_VECTOR`. Input constants are truncated to their logical element width before being sign- or zero-extended as required by each opcode. Input lane `I` is accumulated into result lane `I % NumAccElts`, matching `TargetLowering::expandPartialReduceMLA`. The reduction order is deliberately unspecified, so this mapping is a valid refinement. Poison is propagated only to the affected result lanes. Folding is skipped for undef and opaque constants. Unsupported operand forms return early because partial-reduce nodes have no scalar form and must not fall through to generic per-element folding. After type legalization, when the accumulator element type is not a legal scalar type, the folded constants are created in the promoted legal type (matching the generic per-lane folding path), and the fold bails out if legalization would narrow the element type. The RISC-V test precommits the existing codegen for the basic constant fold. Additional IR tests cover accumulator-width wraparound, poison in the input and accumulator, and safe handling of scalable splats. Direct SelectionDAG unit tests are retained only for node forms that cannot be reliably or acceptably tested through IR: the SMLA/UMLA/SUMLA signedness matrix with promoted narrow inputs, promotion of the folded result to a legal scalar type after type legalization, poison in the implicit multiplier operand, undef and opaque elements, and partially constant no-fold cases. Fixes #209191 https://invent.kde.org/qt/clang/llvm-project/-/commit/bc495da845041056e9a5892816d7fc214e371716 Git commit 14f8ac90350a8a1c5238beb24e4e6286d560a250 by GitHub (on behalf of Baranov Victor) on 07/08/2026 at 11:28.. [clang-tidy][NFC] Apply readability-redundant-nested-if 1/N (#213939) https://invent.kde.org/qt/clang/llvm-project/-/commit/14f8ac90350a8a1c5238beb24e4e6286d560a250 Git commit b23965baa8044edd310c6262900c6a2e3f2fd6bb by GitHub (on behalf of Baranov Victor) on 07/08/2026 at 11:29.. [clang-tidy][NFC] Apply readability-redundant-nested-if 2/N (#213959) https://invent.kde.org/qt/clang/llvm-project/-/commit/b23965baa8044edd310c6262900c6a2e3f2fd6bb Git commit 1533fd95be9ff691b0bd70e589ffa273cf64e9db by GitHub (on behalf of Baranov Victor) on 07/08/2026 at 11:29.. [clang-tidy][NFC] Apply readability-redundant-nested-if 3/N (#214693) https://invent.kde.org/qt/clang/llvm-project/-/commit/1533fd95be9ff691b0bd70e589ffa273cf64e9db Git commit 21b86ec1179db35b1f865a7757880aa7f170d6d5 by GitHub (on behalf of Paul Walker) on 07/08/2026 at 11:46.. [LLVM][CodeGen][AArch64] Increase opportunities to fold shift-of-extend into sshll/ushll. (#213989) Add PreprocessISelDAG logic to undo mul-of-shl to shl-of-mul canonicalisation when either operand is sign/zero extended because the extension can be folded into the shift. https://invent.kde.org/qt/clang/llvm-project/-/commit/21b86ec1179db35b1f865a7757880aa7f170d6d5 Git commit b2f13804c816248653c866dd2f39e83cfd475e3f by GitHub (on behalf of Nerixyz) on 07/08/2026 at 11:47.. [lldb][Windows] Fix value API tests (#214237) This removes the XFAILs for the value API tests. - For `lldb/test/API/python_api/value/TestValueAPI.py`, we need to pass `/debug:symtab` to the linker to get a symbol table. Symbols are "hidden" by default. PDB works around this in the publics stream. For DWARF, we need `/debug:symtab`. An alternative is to use `/debug:dwarf` which also enables this. - For `lldb/test/API/python_api/value/change_values/TestChangeValueAPI.py` there were two issues. First, the stdout wasn't available when we stopped at a breakpoint. Adding a `fflush(stdout)` fixes this. Secondly, the breakpoint was created where the inputs to `printf` were already evaluated. I added another assignment where we set the breakpoint. The added `fflush` might also help with this being flakey on Linux (#26026). Closes #25146 https://invent.kde.org/qt/clang/llvm-project/-/commit/b2f13804c816248653c866dd2f39e83cfd475e3f Git commit be7988c43e1745db1de65c1b1d5fc58a3fe5fa77 by Balazs Benics on 07/08/2026 at 11:58.. [SSAF] Extract the virtual method override relation per TU A virtual call may dispatch to any override of its callee, so a whole-program analysis cannot reason about a method's parameters and return value in isolation. It needs to know which method overrides which, and which slots that relates. Collect this per TU, so a later pass can join the related slots into families. JSON serialization lands separately, so the summary is not writable via --ssaf-extract-summaries yet. §1 of rdar://179151603 https://invent.kde.org/qt/clang/llvm-project/-/commit/be7988c43e1745db1de65c1b1d5fc58a3fe5fa77 Git commit 5e98d1a82e052ea50f1736984fdbbe161712d6d4 by Balazs Benics on 07/08/2026 at 11:58.. tmp - Test that three-level chain records only direct override edges `overridden_methods()` is not transitive. This means that it describes the directly overridden methods - which is usually a single method (unless it overrides the same function from multiple parents). This test case demonstrates that A::f overrides B::f which overrides C::f. And that it's not that A::f overrides C::f without overriding B::f first. Assisted-By: claude https://invent.kde.org/qt/clang/llvm-project/-/commit/5e98d1a82e052ea50f1736984fdbbe161712d6d4