aboutsummaryrefslogtreecommitdiffstats
path: root/tests/benchmarks/qml
Commit message (Collapse)AuthorAgeFilesLines
...
* | | QML: When available, use QQmlAccessors to read properties.Erik Verbruggen2016-04-121-0/+89
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a property is read from a QObject or the QML scope object, and we can statically resolve the type to qreal/QObject/int/bool/QString, and the property has an accessor declared for it, then use that accessor to do the read. This collapses the path of e.g.: Runtime::getQmlScopeObjectProperty -> QObjectWrapper::getProperty -> QObjectWrapper::getProperty -> LoadProperty -> QQmlAccessor::read (all of which do various checks for all the stuff mentioned above) to: Runtime::accessQmlScopeObjectQRealProperty -> QQmlAccessor::read which is a simple 4-line function, and doesn't need to do any check. According to valgrind, this saves 170 instructions on x86 for the simple binding: Item { width: height } Change-Id: I0761d01e8f1a3c13ecbffe2d8e0317ce9c0a4db0 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-04-0849-1560/+20
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change also fixes the build of two benchmarks, tst_affectors and tst_emission. Conflicts: src/plugins/qmltooling/qmldbg_native/qmldbg_native.pro src/qml/qml/ftw/qhashfield_p.h tests/benchmarks/particles/affectors/tst_affectors.cpp tests/benchmarks/particles/emission/tst_emission.cpp tests/benchmarks/qml/pointers/pointers.pro tests/benchmarks/qml/pointers/tst_pointers.cpp tests/benchmarks/qml/qmltime/qmltime.pro tests/benchmarks/qml/qquickwindow/qquickwindow.pro Change-Id: I595309d1e183c18371cb9b07af6e4681059de3b2
| * Purge sRGB chunks from PNG in tests.Edward Welbourne2016-03-295-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | Subjects each *.png file that matched grep -law "sRGB" to: pngcrush -ow -brute -rem allb -reduce Various tools grumble about sRGB tables in PNG images; and our handling of them doesn't pay attention to these, so purging them makes the images smaller with no loss to the images. Change-Id: I9e4dc3aec97cd32bc8ac216fadeaf7669c49647c Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
| * Removed the QQmlGuard benchmarkSimon Hausmann2016-03-243-79/+0
| | | | | | | | | | | | | | | | It's not really useful for automated benchmarking and by now most of QQml has been ported to QPointer. Change-Id: I4ee34ad481fde9ae9903ad50cba7afd7b6ff7bc5 Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
| * Add benchmarks to the "make benchmark" targets that are known to workSimon Hausmann2016-03-1719-23/+21
| | | | | | | | | | | | | | The qjsengine benchmark is one exception that is omitted because it crashes currently. Change-Id: Ic93344dc864d0d6427d85faa12a2753126be808e Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
| * Move qmltime out of benchmarks directory.Robin Burchell2016-03-1525-1586/+0
| | | | | | | | | | | | | | This is a tool, not a benchmark. Change-Id: Ie6b4452a1235923e1663a8a525ddad8408d21545 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
| * qmltime: Remove widgets dependency.Robin Burchell2016-03-112-17/+20
| | | | | | | | | | | | | | | | | | | | To do this easily while retaining the meaning of the -parent flag, we add a private export to QQuickView so that we can set the root object. Change-Id: Iabb2b998816a6fdfcc8417f679c96f04910b8202 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com> Reviewed-by: Michael Brasser <michael.brasser@live.com>
* | Updated license headersJani Heikkinen2016-01-20209-3553/+2508
| | | | | | | | | | | | | | | | | | | | | | | | From Qt 5.7 -> tools & applications are lisenced under GPL v3 with some exceptions, see http://blog.qt.io/blog/2016/01/13/new-agreement-with-the-kde-free-qt-foundation/ Updated license headers to use new GPL-EXCEPT header instead of LGPL21 one (in those files which will be under GPL 3 with exceptions) Change-Id: I04760a0801837cfc516d1c7c02d4f503f6bb70b6 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | Remove QT_DISABLE_DEPRECATED_BEFORE=0 from tests not using deprecated API.Friedemann Kleint2015-09-0317-17/+0
| | | | | | | | | | Change-Id: I691b8ddff60b5f16f06d32b379c76e87f44f84a9 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* | Tests: Remove QT_DISABLE_DEPRECATED_BEFORE=0 for simple cases.Friedemann Kleint2015-09-022-3/+1
|/ | | | | | | Fix usage of API that is marked deprecated. Change-Id: Ia887437f99b9ce207891ca19bc49294acb7d629d Reviewed-by: Liang Qi <liang.qi@theqtcompany.com>
* Fixed license headersJani Heikkinen2015-02-1778-84/+84
| | | | | Change-Id: I4d5640ff95e1361ec7e65fb3e87d7726d8185ff5 Reviewed-by: Sergio Ahumada <sahumada@texla.cl>
* Update copyright headersJani Heikkinen2015-02-12212-2639/+2039
| | | | | | | | | Qt copyrights are now in The Qt Company, so we could update the source code headers accordingly. In the same go we should also fix the links to point to qt.io. Change-Id: I61120571787870c0ed17066afb31779b1e6e30e9 Reviewed-by: Iikka Eklund <iikka.eklund@theqtcompany.com>
* qmltime: Correct module name in error message.Robin Burchell2015-01-061-1/+1
| | | | | Change-Id: Icccad866bdbaf53bf2cb3f1aff30ecd9ff6d06a5 Reviewed-by: Michael Brasser <michael.brasser@live.com>
* tst_compilation: Fix the horrifically broken benchmark.Robin Burchell2014-09-152-21/+27
| | | | | | | | | | Start by updating the horrifically outdated QML (re-copy from SameGame). In addition to this, we reinstate the QVERIFY which cunningly hid the fact that the benchmark was totally broken, and change it to a QVERIFY2, so we can easily identify what broke if anything in the future. Change-Id: Icaa60e0dd0b78861cdd2431af36e534d257a855d Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Update license headers and add new licensesJani Heikkinen2014-08-25134-2545/+1473
| | | | | | | | | - Renamed LICENSE.LGPL to LICENSE.LGPLv21 - Added LICENSE.LGPLv3 & LICENSE.GPLv2 - Removed LICENSE.GPL Change-Id: I84a565e2e0caa3b76bf291a7d188a57a4b00e1b0 Reviewed-by: Jani Heikkinen <jani.heikkinen@digia.com>
* benchmarks: Skip compilation of (and mark with FIXME) a few benchmarks that ↵Robin Burchell2014-08-122-2/+2
| | | | | | | don't build. Change-Id: I4d2e9bf3a520636c568a6b58e311994693446c97 Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* Fix compilation of tst_compilation (:-P) benchmark.Robin Burchell2014-08-122-31/+1
| | | | | Change-Id: I7bbf24d816a356f100d7e2c5a8e7a81218f0f54d Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* fix whitespaceOswald Buddenhagen2014-01-227-11/+11
| | | | | | | remove trailing spaces and expand tabs Change-Id: Ieacb9d096b612c45d1a64700044c114d1f7522bc Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Add fine-grained QML / QtQuick performance benchmarksChris Adams2013-10-0174-0/+2132
| | | | | | | | | | This commit adds a series of benchmarks to test the performance of fundamental areas of the QML engine (compilation, instantiation, binding evaluation, positioning) using types provided by the QtQuick QML module. Change-Id: Iecec058c45aea0bd728f03123fa2aa79d6af8efa Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com> Reviewed-by: Christopher Adams <chris.adams@jollamobile.com>
* test: Remove v8-private for tst_pointersSergio Ahumada2013-08-151-1/+1
| | | | | Change-Id: I60f98d1f3563d19e141439385e9d862590d8f63f Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Merge branch 'dev' of ssh://codereview.qt-project.org/qt/qtdeclarative into ↵Simon Hausmann2013-06-2410-27/+24
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | wip/v4 Conflicts: src/imports/qtquick2/plugins.qmltypes src/qml/debugger/qv8debugservice.cpp src/qml/qml/qml.pri src/qml/qml/qqmlcompiler.cpp src/qml/qml/qqmlcomponent.cpp src/qml/qml/qqmlcontext.cpp src/qml/qml/qqmldata_p.h src/qml/qml/qqmlengine_p.h src/qml/qml/qqmljavascriptexpression.cpp src/qml/qml/qqmlxmlhttprequest.cpp src/qml/qml/v4/qv4bindings.cpp src/qml/qml/v4/qv4irbuilder.cpp src/qml/qml/v4/qv4jsonobject_p.h src/qml/qml/v8/qqmlbuiltinfunctions.cpp src/qml/qml/v8/qv8bindings.cpp src/qml/qml/v8/qv8contextwrapper.cpp src/qml/qml/v8/qv8listwrapper.cpp src/qml/qml/v8/qv8qobjectwrapper.cpp src/qml/qml/v8/qv8qobjectwrapper_p.h src/qml/qml/v8/qv8sequencewrapper_p_p.h src/qml/qml/v8/qv8typewrapper.cpp src/qml/qml/v8/qv8valuetypewrapper.cpp src/qml/types/qqmldelegatemodel.cpp src/quick/items/context2d/qquickcanvasitem.cpp src/quick/items/context2d/qquickcontext2d.cpp sync.profile tests/auto/qml/qjsengine/tst_qjsengine.cpp tests/benchmarks/qml/animation/animation.pro tools/qmlprofiler/qmlprofiler.pro Change-Id: I18a76b8a81d87523247fa03a44ca334b1a2360c9
| * Fix compilation of QML benchmarksPeter Varga2013-06-0610-27/+24
| | | | | | | | | | Change-Id: I2d612108ec8d69a0a9318cd26f6adcbb74f34138 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | Fix compilation with built-in v4vm JS engineSimon Hausmann2013-04-154-4/+4
|/ | | | | Change-Id: Ieda9267e296acf6392a5461f4cfb9233a7a409a0 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Update copyright year in Digia's license headersSergio Ahumada2013-01-10210-210/+210
| | | | | | Change-Id: I6c3bd7bebe3d62d1cfd0fa6334544c9db8398c76 Reviewed-by: Akseli Salovaara <akseli.salovaara@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* make use of qtHaveModule()Oswald Buddenhagen2013-01-102-2/+2
| | | | | | | Change-Id: I23f11c944fafb5863a960dcc83bc1e57e189f662 Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com> Reviewed-by: Tasuku Suzuki <stasuku@gmail.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Add a hidden XandYAxis enum valueAlan Alpert2012-12-151-1/+1
| | | | | | | | | For Qt 5 XandYAxis is being renamed to XAndYAxis to more consistently follow capitalization rules. Add an undocumented XandYAxis variable to ease porting. Change-Id: Id9e41dd5578373f5f557937da889a9326ff12e53 Reviewed-by: Martin Jones <martin.jones@jollamobile.com>
* Declare QJSValue as a metatype where it is defined.Stephen Kelly2012-12-042-5/+0
| | | | | | | Instead of in multiple different TUs, therefore causing ODR violations. Change-Id: I08d3624d3ed5a995e96488361665afa197fb9fc9 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
* Fix performance bottleneck in QQuickWindow::mouseMoveEvent().Sérgio Martins2012-10-113-1/+104
| | | | | | | | | | | | | | | | | | When a mouse move event is received, a lot of time is spent looking for items with cursors, recursively. With this patch, it will only recur into item hierarchies that contain cursors. Not having cursors is much more common than having them. Benchmark included: Before: 15 msecs per iteration (total: 62, iterations: 4) After: 0.000064 msecs per iteration (total: 68, iterations: 1048576) Task-number: QTBUG-27054 Change-Id: I3a5441652ca1c0b8d2cbc5683013562174f5af4a Reviewed-by: Alan Alpert <416365416c@gmail.com>
* Change copyrights from Nokia to DigiaIikka Eklund2012-09-23210-5111/+5111
| | | | | | | Change copyrights and license headers from Nokia to Digia Change-Id: Ie7f5d49ed8235d7a7845ab68f99ad1c220e64d5c Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* doc: fix some more typosSergio Ahumada2012-09-101-1/+1
| | | | | Change-Id: I7fa055049b9e5900d597754c6004febb153de12b Reviewed-by: Jerome Pasion <jerome.pasion@nokia.com>
* Add type name to singleton (module api) implementations.Glenn Watson2012-08-081-7/+7
| | | | | | | | | | | | | This change renames the previous module api implementation to singleton types. When a singleton type is registered, a type name must be provided that is used when accessing the API from QML. This makes the implementation more consistent with the rest of QML. Task-number: QTBUG-26549 Change-Id: Iab0bb1ccf516bd3ae20aee562a64d22976e0aecd Reviewed-by: Chris Adams <christopher.adams@nokia.com>
* Set the Qt API level to compatibility mode in all tests.Thiago Macieira2012-08-0118-0/+18
| | | | | | | | | | Qt 5.0 beta requires changing the default to the 5.0 API, disabling the deprecated code. However, tests should test (and often do) the compatibility API too, so turn it back on. Task-number: QTBUG-25053 Change-Id: I6988c2360e9d88916311374a0c910bfc5b607439 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Rename speed -> velocity in the particle systemAlan Alpert2012-06-291-1/+1
| | | | | | | | Matches the convention set in the QtQuick module, for example by ListView and Flickable. Change-Id: I8df57ed1ced8128723d790c30c00cc1b2062787d Reviewed-by: Bea Lam <bea.lam@nokia.com>
* Remove non-templated qobject module api registration functionChris Adams2012-06-122-15/+11
| | | | | | | | | | | | | Previously, both templated and non-templated qobject module api registration functions were provided as public API. The non-templated version is identical to the templated version, except that bindings which access properties of module apis registered with that function cannot be optimized with v4. This commit removes the non-templated version of the function. Change-Id: Ic417aa241f1172bf6d055bdc7f528d7e9304097b Reviewed-by: Martin Jones <martin.jones@nokia.com>
* Text benchmarksYann Bodson2012-05-142-0/+135
| | | | | | | | | Benchmarks to compare the cost of creating 42 text items in a grid vs. using a single text item with 42 lines and laying them out using onLineLaidOut. Change-Id: I4c11e23a3fd04bb8b52b5566fb120d336614c98b Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
* Add more benchmark tests for ItemAdriano Rezende2012-05-1413-0/+657
| | | | | Change-Id: I603df39d75a5eddb02a39ab08755991a0655ff19 Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
* Change uses of {to,from}Ascii to {to,from}Latin1Thiago Macieira2012-05-041-3/+3
| | | | | | | | | | This operation should be a no-op anyway, since at this point in time, the fromAscii and toAscii functions simply call their fromLatin1 and toLatin1 counterparts. Task-number: QTBUG-21872 Change-Id: I03084595ddc425a988374b8352fd23e9504ffba6 Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
* Remove QJS exception APIKent Hansen2012-05-031-9/+0
| | | | | | | | | | | | | | | | | This API has been deprecated for a while. It's legacy stuff from QtScript. Until someone proves that QJSValue::isError() isn't sufficient to handle JavaScript exceptions, we won't provide any additional API for that. Also removed QJSValuePrivate::lessThan(), which was using the exception mechanism, but the function itself wasn't used anymore (another remnant from the QtScript days). Change-Id: I3dffc6a7835874153f90d25ae2a72c93ea6db39a Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Merge master <-> api_changesMatthew Vogt2012-03-057-106/+261
| | | | Change-Id: Iad2f07b989b25349fd2d4fff010e24dcd5a1688f
* Rename QDeclarative symbols to QQuick and QQmlMatthew Vogt2012-02-24236-0/+18442
Symbols beginning with QDeclarative are already exported by the quick1 module. Users can apply the bin/rename-qtdeclarative-symbols.sh script to modify client code using the previous names of the renamed symbols. Task-number: QTBUG-23737 Change-Id: Ifaa482663767634931e8711a8e9bf6e404859e66 Reviewed-by: Martin Jones <martin.jones@nokia.com>