qt6-bb10/tests/auto/corelib/tools
Thiago Macieira 948fa2a427 QBitArray: add mutation operators taking rvalue QBitArrays
Because we may be able to use the other side's storage and apply the
operation in-place. We reuse the storage of the one that can be
detached: even if we have to grow the buffer, QBitArrays are usually
small so there's a good chance it's just to the extra space QArrayData
usually overallocates or a simple, non-moving realloc().

Disassembly with GCC 13 and Clang 17 show the vectorisers did kick in
for all four functions (inverted_inplace included). I think a
hand-rolled version could squeeze a few more cycles, especially in the
tail section, but I don't consider its maintenance cost to be worth it.

Pick-to: 6.7
Change-Id: I85b3fc2dd45c4693be13fffd1795bfb1b296caa6
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
2023-12-14 17:46:12 -08:00
..
collections Mark all of Qt as free of Q_FOREACH, except where it isn't 2023-08-19 05:19:42 +00:00
containerapisymmetry tst_containerapisymmetry: remove the extra push_back 2023-12-07 23:55:08 +01:00
qalgorithms CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
qarraydata QArrayDataPointer: add an allocating constructor 2023-10-25 12:01:58 -07:00
qatomicscopedvaluerollback Make QAtomicScopedValueRollback public API 2023-12-08 02:24:41 +01:00
qbitarray QBitArray: add mutation operators taking rvalue QBitArrays 2023-12-14 17:46:12 -08:00
qcache CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
qcommandlineparser QCommandLineParser: Warn invalid value calls 2023-09-21 22:05:06 +02:00
qcontiguouscache CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
qcryptographichash QCryptographicHash: fallback to non-OpenSSL implementation for Keccak 2023-11-08 18:40:14 +01:00
qduplicatetracker QDuplicateTracker: test with std::string, too 2023-12-11 19:00:16 +00:00
qeasingcurve tests/auto/: port Q_FOREACH to ranged-for, local const containers 2023-08-19 16:29:25 +03:00
qexplicitlyshareddatapointer tst_QExplicitlySharedDataPointer: Remove stray comment 2023-07-25 12:31:04 +02:00
qflatmap CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
qfreelist tst_QFreeList: build with QT_NO_FOREACH 2023-08-19 16:29:54 +03:00
qhash Check that QMulti{Map,Hash} (still) store in reverse insertion order 2023-12-07 07:16:23 +02:00
qhashfunctions tst_QHashFunctions: suppress warning about casting from float to _Float16 2023-10-24 08:44:36 -07:00
qhashseed CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
qline CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
qlist Make QAtomicScopedValueRollback public API 2023-12-08 02:24:41 +01:00
qmacautoreleasepool CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
qmakearray CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
qmap Check that QMulti{Map,Hash} (still) store in reverse insertion order 2023-12-07 07:16:23 +02:00
qmargins CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
qmessageauthenticationcode CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
qoffsetstringarray CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
qpair CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
qpoint CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
qpointf CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
qqueue CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
qrect CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
qringbuffer CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
qscopedpointer CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
qscopedvaluerollback CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
qscopeguard tst_QScopeGuard: test if and how guard in optional<> works 2023-07-10 19:47:08 +00:00
qset CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
qsharedpointer QSP/QWP: introduce owner_before, owner_equal, owner_hash 2023-10-26 19:24:40 +02:00
qsize CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
qsizef CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
qspan Long live QSpan as public API! 2023-12-07 22:38:15 +00:00
qstl CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
qtaggedpointer CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
qtimeline CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
quniquehandle Add QUniqueHandle - a general purpose RAII wrapper for non-memory types 2023-11-15 05:01:51 +01:00
qvarlengtharray CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
qversionnumber CMake: Make corelib tests standalone projects 2023-07-05 15:09:32 +02:00
CMakeLists.txt Add QUniqueHandle - a general purpose RAII wrapper for non-memory types 2023-11-15 05:01:51 +01:00