| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
Complement previous commit by aligning Qt itself to use .files
consistently for DEPLOYMENT as well as INSTALLS.
This excludes changes to webkit.
Task-number: QTBUG-3216
Reviewed-by: axis
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
qmake/generators/win32/msbuild_objectmodel.cpp
qmake/generators/win32/msbuild_objectmodel.h
qmake/generators/win32/msvc_objectmodel.cpp
qmake/generators/win32/msvc_vcxproj.cpp
src/corelib/arch/qatomic_arm.h
tests/auto/qglthreads/tst_qglthreads.cpp
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
After commit 4363d4eebce4afd2ce3b3d6da205f8037357099a, createUuid()
would create a QFile, open it, read from it, and destroy it. This
resulted in a pretty serious performance regression (report says around
2000 times slower, I measured 3600 times slower on my machine).
This change creates one QFile per thread (since QFile is not thread
safe) and leaves the file open until the thread exits (at which point
QThreadStorage deletes the QFile).
This approach is around 600 times faster than the current code, which is
around 6 times slower than the original. Unfortunately, it is not
possible to restore the original performance without reintroducing the
problems that the commit mentioned above had fixed.
Benchmark is included.
Task-number: QTBUG-13877
Reviewed-by: thiago
Reviewed-by: mgoetz
|
|\ \
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
doc/src/snippets/code/doc_src_qmake-manual.qdoc
src/corelib/arch/symbian/arch.pri
src/declarative/graphicsitems/qdeclarativeflickable.cpp
src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp
src/opengl/gl2paintengineex/qtextureglyphcache_gl.cpp
src/opengl/gl2paintengineex/qtextureglyphcache_gl_p.h
tests/auto/qfontmetrics/tst_qfontmetrics.cpp
|
| |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* '4.7' of scm.dev.nokia.troll.no:qt/qt-qml: (27 commits)
Revert "QDeclarativeDebugService: Add bc autotest" to get changes through staging.
Doc clarification.
Fallback to A8 text rendering on Mac when LCD smoothing is disabled
Recreate Qt 4.7 branch QtDeclarative def files on top of changes made to Qt 4.7.1
Autotest that new "import Qt 4.7"s aren't added accidentally
Document "import QtQuick 1.0" change
Replace "import Qt 4.7" with "import QtQuick 1.0"
Add test for Qt 4.7 module
Replace all occurances of "Qt 4.7" with "QtQuick 1.0"
Correct property type of PathAttribute::value in the docs.
Register QtQuick 1.0 module.
Remove unused AST node destructors.
Fix crash when trying to append a null transform to QDeclarativeItem.
Documentation.
Documentation fix for Flickable (mark content properties as real, not int).
QDeclarativeDebugClient: Fix gcc warning
QmlDebugService: Check that there is a receiver before sending messages
If a type is registered under several names, share the attached property object
QmlViewer: Fix typo in comment
QmlViewer: Fix assert on exit (Windows)
...
|
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-13799
Reviewed-by: Martin Jones
|
| |/
| |
| |
| |
| | |
Task-number: QTBUG-14013
Reviewed-by: Peter Hartmann
|
| |
| |
| |
| |
| |
| |
| | |
Measure the variant too where a download buffer was requested
but the read() functions are then used.
Reviewed-by: TrustMe
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The zerocopy download buffer is now QSharedPointer<char>
instead of the QSharedPointer to QVarLengthArray<char>.
This will be a bit leaner to handle by QML and QtWebKit
and does not tie us to a QVLA that much.
Also fix some bugs related to signal emissions and the
return value of bytesAvailable(). Now the behaviour should be
the same if a zerocopy buffer is used or not.
Reviewed-by: Peter Hartmann
Reviewed-by: Thiago Macieira
|
|\ \
| |/
| |
| |
| |
| |
| | |
Conflicts:
qmake/generators/win32/msbuild_objectmodel.cpp
qmake/generators/win32/msvc_vcxproj.cpp
tests/auto/qnetworkreply/tst_qnetworkreply.cpp
|
| | |
|
| |
| |
| |
| |
| |
| | |
for inverting the result
On 32-bit, we're out of registers already, so this variable ended up in memory
|
| |
| |
| |
| | |
support them (e.g. ARM)
|
| |
| |
| |
| | |
Even though this function *only* does aligned loads, it's worse than the other function
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
This results in no change on the Core-i7, but another 2.6% on the Atom
(so it's now 8% better than 4-byte loads and 31% better than current
code)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The results on i7 are 32% improvement over current code, 13%
improvement over 4-byte loads, 6% over the unaligned SSSE3
loads. However, it's about 2.5% slower than pure SSE2 code due to
complexity.
The results on Atom are 30% improvement over current code, 7% over
4-byte loads, 15% over pure unaligned SSE2 and 9% over unaligned
SSSE3.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
This is a different technique of aligning. Instead of reading some
bytes before the string, we will read some bytes of the string twice.
Best results are only 2% improvement over the unaligned SSE2 on a
Core-i7.
|
| |
| |
| |
| |
| | |
First results make it 34% faster than current ucstrncmp, 16% faster than
the 32-bit version.
|
| | |
|
| |
| |
| |
| |
| | |
This speeds up the writing of algorithms, so I don't have to recompile
megabytes of data dumps.
|
| |
| |
| |
| |
| |
| | |
Also use the real-world data that I collected. The resulting files are
quite large, so I've added to Git only the smallest dump (apparently
Teambuilder scanning the environment for "TEAMBUILDER=").
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
It's currently slightly worse than SSE2 with prolog aligning
(i.e., it's no good)
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Instead of using a non-SIMD method for aligning, we instead load more bytes
from p1 and use the PALIGNR instruction to realign to what we want.
The result is that it's bit slower than the non-SIMD comparison, due to the
complexity. For strings over 8 QChars wide, it's only slightly worse than
the non-SIMD comparison.
|
| |
| |
| |
| |
| |
| |
| | |
The prolog tries to align p1 to a multiple of 16, so as to run
aligned loads, which are faster. Unfortunately, my tests so far
indicate that the prolog ends up taking longer than the benefit
of having aligned loads.
|
| |
| |
| |
| |
| | |
This function uses unaligned loads. I'll try to write one with
aligned loads later.
|
| |
| |
| |
| | |
This is a copy of qMemEquals from qstring.cpp
|
| | |
|
|\ \
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
qmake/generators/win32/msbuild_objectmodel.cpp
src/declarative/qml/qdeclarativexmlhttprequest.cpp
src/opengl/opengl.pro
src/opengl/qgl_p.h
src/plugins/bearer/connman/qconnmanservice_linux.cpp
tests/auto/qpainter/tst_qpainter.cpp
tools/assistant/tools/assistant/helpviewer_qwv.h
tools/assistant/tools/assistant/openpageswidget.h
|
| |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1:
Cocoa: revert parts of cc6dc0aeefde881a95f5fea2b26f2f3d7bdc6e15
Cocoa, Autotest: disable autotest that was added a bit premature
make error messages consistent
Add tests/benchmarks/README
qgrayraster: Remove unnecessary indirection in QT_FT_Outline_Decompose
Cocoa: add autotest to be more safe regarding child window stacking
Fix compilation: QT_NO_TEXTSTREAM
exclude QtXmlPatterns from the completeness assessment
fix QMAKE_SUBSTITUTES with shadow builds
Outline / fill inconsistency in X11 paint engine.
Cocoa: parent windows shows on screen when they should be hidden
Prevented Xorg crash in qtdemo when running corkboards example.
|
| | |
| | |
| | |
| | |
| | |
| | | |
With some information from the dev mailing list.
Reviewed-by: Thiago
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
SSSE3 provides two tools to improve the blending speed over SSE2:
-palignr
-byte permutation
The alignement is enforced on src and dst with palignr to always make
aligned access.
The extraction of the alpha mask is done with a byte permutation in
order to save two instructions per cycle.
On Atom, this patch gives between 0% (aligned src) to 10% of
improvement (unaligned 4 and 12 bytes).
On Core 2, this patch gives consistently 8% to 10% of improvement
for every miss-alignment.
Reviewed-by: Samuel Rødal
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
master-integration
* 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-1:
Cannot enter text through character viewer on Mac (Cocoa)
QNAM HTTP: Remove eatWhitespace() hack
QNAM: Fix namespaced compilation
Revert the addition of the test of QtTest's random feature.
QAbstractSocket: Remove warning
QNAM Zerocopy: Benchmark
tst_qbytearray: Auto test for reserve()
tst_qiodevice: Add peek()ing auto test
tst_qnetworkreply: Zerocopy auto test
tst_qhttpnetworkconnection: Pipelining auto test
QNAM Zerocopy: QNAM implementation part
QNAM Zerocopy: HTTP implementation part
QAbstractSocket: Enable Unbuffered OpenMode for TCP
QNativeSocketEngine: Fix wrong debug output
Added QObject::senderSignalIndex()
Cleanup the connection list logic in QObject::sender
Fixed linking against libQtTest on Mac.
Added -random option to tests, making the test cases within a test execute in arbitrary order. Very useful for avoiding test cases being dependent on the running order.
|
| | | |
|
|\ \ \
| |/ /
|/| /
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/gui/painting/qpainter.cpp
src/gui/text/qtextengine.cpp
tests/auto/qimage/tst_qimage.cpp
tests/auto/qpainter/tst_qpainter.cpp
tools/qdoc3/test/assistant.qdocconf
tools/qdoc3/test/designer.qdocconf
tools/qdoc3/test/linguist.qdocconf
tools/qdoc3/test/qmake.qdocconf
tools/qdoc3/test/qt-build-docs.qdocconf
tools/qdoc3/test/qt-html-templates.qdocconf
tools/qdoc3/test/qt-html-templates_zh_CN.qdocconf
tools/qdoc3/test/qt.qdocconf
|
| |
| |
| |
| | |
Reviewed-by: hjk
|
| |
| |
| |
| |
| |
| | |
On Atom, comp_Source is 280% faster with the SSE2 implementation.
Reviewed-by: Andreas Kling
|
| |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
src/3rdparty/webkit/VERSION
src/3rdparty/webkit/WebKit/qt/ChangeLog
src/gui/itemviews/qlistview.cpp
tests/auto/qlistview/tst_qlistview.cpp
tests/auto/qnetworkreply/test/test.pro
tests/auto/qsocks5socketengine/qsocks5socketengine.pro
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
These test cases are not considered reasonable for a small screen device
(625 widgets). Patching the QWidget code to use iteration rather than
recursion is considered too risky, as the code is performance critical.
Task-number: QTBUG-8512
Reviewed-by: Bjoern Erik Nilsen
|
| | |
| | |
| | |
| | |
| | | |
Task-number: QT-9377
Reviewed-by: Joao
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The benchmarks cover the following:
- Reading and writing meta-object-defined properties.
- Reading and writing dynamic properties.
- Reading child objects.
- Reading script-defined (wrapper object) properties.
- Reading prototype-inherited properties.
- Calling slots (overloaded and non-overloaded, with
or without implicit argument conversion).
- Signal handling.
Both "simple" and "complex" objects are tested. A "simple" object
is an object that inherits directly from QObject, i.e. it doesn't
drag with it a lot of stuff. A "complex" object is an object that
has many properties and a relatively long inheritance chain
(currently QPushButton is used).
Reviewed-by: Jedrzej Nowacki
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Tests all built-in (core and GUI) types, both default construction
(copy == 0) and copy construction.
The benchmarks for GUI types must go into a separate file because
core tests don't (and shouldn't) link against QtGui.
Reviewed-by: Benjamin Poulain
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Tests all built-in (core and GUI) types, both default construction
(copy == 0) and copy construction.
The benchmarks for GUI types must go into a separate file because
core tests don't (and shouldn't) link against QtGui.
Reviewed-by: Benjamin Poulain
|