[qt/qt/qtdeclarative]: 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/qt/qtdeclarative Pushed by mirror-service into branch 'dev'. Changed from a1276138612a724047b99557ed287c7486caf73a to ab4a47837027ef6f14029fce196564c5fb657c08 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 c72db991bd4808eb25a3e6969502c6d8fdaa2a1a by Richard Moe Gustavsen on 23/07/2026 at 07:39.. StyleKit: remove unused property The usingDefaultDelegate property is not being used anywhere. So remove it. Pick-to: 6.12 Change-Id: I2593feda38cee9ef5a43e06138dc835a88a8975e Reviewed-by: Doris Verria <[email protected]> https://invent.kde.org/qt/qt/qtdeclarative/-/commit/c72db991bd4808eb25a3e6969502c6d8fdaa2a1a Git commit b2c8d5481c3ad3faea5e8f8fbd08cc70aca9d8dc by SanthoshKumar Selvaraj on 23/07/2026 at 12:18.. ohos: Rename Q_OS_OHOS macro to Q_OS_HARMONY Qt renamed the HarmonyOS platform detection macro from Q_OS_OHOS to Q_OS_HARMONY. Update #if/#elif guards across the tests and snippets to use the new macro name. Note: Q_OS_OHOS will be removed once its completely migrated to Q_OS_HARMONY Pick-to: 6.12 Change-Id: I1adfe1582a677d7d6e996f53be7c27787309ce84 Reviewed-by: Liang Qi <[email protected]> https://invent.kde.org/qt/qt/qtdeclarative/-/commit/b2c8d5481c3ad3faea5e8f8fbd08cc70aca9d8dc Git commit 567d5401b6b1b226374010301ea5cc7bf7ac1251 by Semih Yavuz on 23/07/2026 at 12:18.. highlight benchmarks: fix build This benchmark links against QmlLSPrivate, don't check QmlLS. Change-Id: I4b0e8184e38073436363a4e018e884a5a1512cf5 Reviewed-by: Olivier De Cannière <[email protected]> https://invent.kde.org/qt/qt/qtdeclarative/-/commit/567d5401b6b1b226374010301ea5cc7bf7ac1251 Git commit 8e7626a8525719173b517133559f4ef2f11d213a by Olivier De Cannière on 23/07/2026 at 12:18.. Compiler: Micro-optimize populateReaderLocations - Make things const where possible - Avoid needless copies - Use CoW-less containers - Make conversionOrigins return a reference These changes have a significant impact on the compilation speed of large functions. Using the list of 5000 strings from the linked issue as a benchmark, with this change in a release build, the time spent inside populateReaderLocations drops from ~1700ms to ~500ms and the total execution time of qmlcachegen drops from 1.8s to 0.6s. A more fundamental algorithmic improvement may still be needed but this is still an easy win. Task-number: QTBUG-148164 Pick-to: 6.12 Change-Id: I69fddf47572ea5384b778fa97e1c0371b50d0eb8 Reviewed-by: Ulf Hermann <[email protected]> https://invent.kde.org/qt/qt/qtdeclarative/-/commit/8e7626a8525719173b517133559f4ef2f11d213a Git commit 0f56e9f7efae41bf7da732e5174d19c2a45d9557 by Olivier De Cannière on 23/07/2026 at 12:18.. Compiler: Optimize the populateReaderLocations algorithm populateReaderLocations finds the instructions that read the value written from every write instruction. This is done to later optimize away dead stores. The algorithm used is quadratic and explodes in complexity on large functions. It works by searching every possible downstream instruction in reachable blocks. In low-branch programs this will scale at least as n * n/2 where n is the number of instructions. The algorithm is quite tangled and handles multiple things at the same time deep inside nested loops: -Blocks can be re-entered through backjumps -Once a register is written to a second time, subsequent reads no longer read the value written by the original write instruction. -Conversions and merges needs to be accounted for to be able to hold all possible values. Removing work there saves a lot of time. This patch reduces the amount of work that is done in the quadratic section. Since register contents can be identified uniquely by their d-pointer now, we can precompute writes and reads in two linear scans of the instructions using a hashmap of written register contents to write instructions. This again brings down the time spent inside populateReaderLocations on the 5000 strings array benchmark from the linked issue from ~600ms to ~150ms. populateReaderLocations still accounts for around 45% of the total execution time of qmlcachegen so more can probably be done. Insight and initial implemention by Claude. Task-number: QTBUG-148164 Pick-to: 6.12 Assisted-by: Claude Sonnet 5 Change-Id: I410a0cb21924e3f5eea199018329cb0aca95ec3e Reviewed-by: Sami Shalayel <[email protected]> Reviewed-by: Fabian Kosmale <[email protected]> https://invent.kde.org/qt/qt/qtdeclarative/-/commit/0f56e9f7efae41bf7da732e5174d19c2a45d9557 Git commit 3f9f3f0b32e9ef3f5e0c75e2bca094980feb0617 by Olivier De Cannière on 23/07/2026 at 12:18.. Compiler: Add HugeArrayCompilation benchmark This benchmark is intended to be used to measure performance when compiling very large functions where complexity issues might manifest themselves and slow down compilation significantly. This quantifies the improvements of the last two patches improving populateReaderLocations to reduce its bottleneck on the compilation of large functions: Baseline 1778ms Micro-optimized 698ms Algorithm change 227ms Task-number: QTBUG-148164 Change-Id: I83c2d11b97af815c212dbf8f6ba0fe012ab929e3 Reviewed-by: Sami Shalayel <[email protected]> Reviewed-by: Fabian Kosmale <[email protected]> https://invent.kde.org/qt/qt/qtdeclarative/-/commit/3f9f3f0b32e9ef3f5e0c75e2bca094980feb0617 Git commit 9ac126ea705e57e64c2b897b7626b069d1a1a481 by Volker Hilsheimer on 23/07/2026 at 12:18.. QQmlDataTest: only reduce default timeout when not running in CI If we see a QTEST_ENVIRONMENT environment variable, leave the default try-timeout unchanged at 5 seconds. Amends e7b90cfc31e9b651fd4895944f84d78aa637f120. Task-number: QTBUG-138662 Task-number: QTBUG-81979 Pick-to: 6.12 6.11 Change-Id: Id657d1bd73c02c502571281895b220f4aff70685 Reviewed-by: Fabian Kosmale <[email protected]> Reviewed-by: Mitch Curtis <[email protected]> Reviewed-by: Volker Hilsheimer <[email protected]> https://invent.kde.org/qt/qt/qtdeclarative/-/commit/9ac126ea705e57e64c2b897b7626b069d1a1a481 Git commit ab4a47837027ef6f14029fce196564c5fb657c08 by Fabian Kosmale on 23/07/2026 at 12:18.. QV4: Consider C++ stack limit in RegExp YARR already has infrastructure to prevent running out of stack space, we just never wired it up correctly. Given that the engine already has the information, we just need to pass it along. Pick-to: 6.12 6.11 6.8 Fixes: QTBUG-148295 Change-Id: I32b048b65fac1bacbffab52661815dbd76417587 Reviewed-by: Sami Shalayel <[email protected]> Reviewed-by: Ulf Hermann <[email protected]> https://invent.kde.org/qt/qt/qtdeclarative/-/commit/ab4a47837027ef6f14029fce196564c5fb657c08