qt5base-lts/tests/auto/corelib/tools
Kent Hansen a48e9af146 Boost performance of QChar::isLetter
Make it inline; add fast checks for ascii letters;
add fallback function that uses the fastcall calling
convention.

On ia32, this change makes isLetter ~370x faster for
ascii letters, ~250x faster for non-letter ascii
characters, and ~1.5x faster for non-ascii characters.

Note that this change is NOT binary compatible.

Also add an autotest with expected results from
before the optimization, to ensure that the
behavior is the same.

Change-Id: I06f8d3d43114537cee5567e670898cef6494c20a
Reviewed-on: http://codereview.qt-project.org/4903
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-09-15 20:39:28 +02:00
..
qalgorithms Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qbitarray Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qbytearray Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qbytearraymatcher Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qcache Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qchar Boost performance of QChar::isLetter 2011-09-15 20:39:28 +02:00
qcontiguouscache Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qcryptographichash Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qdate Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qdatetime Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qeasingcurve Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qelapsedtimer Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qexplicitlyshareddatapointer Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qfreelist Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qhash Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qline Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qlist Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qlocale Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qmap Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qmargins Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qpoint Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qqueue Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qrect Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qregexp Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qringbuffer Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qscopedpointer Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qscopedvaluerollback Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qset Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qsharedpointer Disabled tests for refactor->master integration 2011-09-13 08:25:05 +02:00
qsize Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qsizef Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qstl Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qstring Merge remote branch 'gerrit/master' into HEAD 2011-09-06 10:55:40 +02:00
qstringbuilder Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qstringlist Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qstringmatcher Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qstringref Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qtextboundaryfinder Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qtime Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qtimeline Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qvarlengtharray Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
qvector Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00
tools.pro Moving relevant tests to corelib/tools 2011-09-01 13:07:23 +02:00