[Development] Please review my submissions

Thiago Macieira thiago.macieira at intel.com
Thu Jan 16 22:41:03 CET 2014


On segunda-feira, 13 de janeiro de 2014 12:56:08, Thiago Macieira wrote:
> The following changes have been unreviewed for some time, even after my ping
> of 10 days ago:
> 
> https://codereview.qt-project.org/73060 Centralize support for QBasicAtomic
> for ints and longs
> https://codereview.qt-project.org/73062 Replace the type-based
> QAtomicIntegerTraits with a size-based one
> https://codereview.qt-project.org/73187 Add support for 16- and 64-bit
> atomics with MSVC
> https://codereview.qt-project.org/43290 Add a testAndSet overload to the
> atomics that returns the current value
> 
> The changes above are in QtCore and I can still maintainer-approve them
> (which I will do in 72 hours if there are no further -1 or -2).
> 
> The following change also requires review but falls outside QtCore, so I
> cannot maintainer-approve them:
> 
> https://codereview.qt-project.org/73509

Thanks for the help from the reviewers. 73509 was integrated last night (and 
promptly broke the build for iOS).

Of the other ones I mentioned, 43290 and 73187 still require review. It looks 
like this one is also needed before we can review the forkfd series:

https://codereview.qt-project.org/51306 
  Add the rest of the non-volatile members of std::atomic to QBasicAtomic

The other review train, for the SSE2 optimisations, is mostly reviewed, but 
these are pending:

https://codereview.qt-project.org/69979 
  Add/update benchmarks for the UTF-8 codec
https://codereview.qt-project.org/69597 
  Add support for UTF-8 encoding/decoding with SIMD
https://codereview.qt-project.org/73962 
  Improve qstring.cpp:findChar with SSE2 and update benchmarks
https://codereview.qt-project.org/74337
  Update the qHash function for strings to use the CRC32 instruction

Technically, the last one isn't SSE2 -- the CRC32 instruction is SSE4.2. By 
the way, ARMv8 adds a CRC32 instruction too, but you won't get a patch to use 
that from me.

For the forkfd series that fixes the problems QProcess (and saves us one 
auxiliary thread), I'll get reviewers after the QAtomic changes are in, as 
they need to test the code first.

Next on my list:
 - (P1) replicate the SSE2 gains to QByteArray
 - (P1) merge the multiple sections doing fromLatin1 in qstring.cpp
 - (P2) review the toLatin1 benchmarks
 - (P3) verify whether we can do qt_find_string / QByteArrayMatcher / 
   QStringMatcher faster with SSE2 or SSE4.2 than Boyer-Moore
 - (P1) introduce an optimised SHA-1 implementation using [1]
 - (P4) optimise SHA-1 and SHA-2 further using the Intel SHA instructions
 - (P1) introduce runtime checking of SSE4.2 for qHash

[1] http://software.intel.com/en-us/articles/improving-the-performance-of-the-secure-hash-algorithm-1
-- 
Thiago Macieira - thiago.macieira (AT) intel.com
  Software Architect - Intel Open Source Technology Center
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 190 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.qt-project.org/pipermail/development/attachments/20140116/2770b9e8/attachment.sig>


More information about the Development mailing list