Go to file
Lars Knoll be1ce6b269 Separate the error case when evaluating bindings
There's no point in returning a usually empty error when
evaluating bindings, adding overhead to the regular code
path.

Instead, the error can be set on the currently evaluating
binding if required. This streamlines the functor used to
wrap the binding and should thus expand to less code and
execute faster in the regular case.

To achieve this, expose a pointer to the currently evaluating
binding in the private API (as QtQml needs it to be able to
report errors).

The error case now requires one additional TLS lookup, but
we don't really care about performance in that case anyway.

Change-Id: Iecb450e765244930a41d813fcf8eb4013957a6a3
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
2020-07-10 15:07:07 +02:00
.github/workflows Update configure flags to the last fixes 2020-06-30 15:21:32 +02:00
bin syncqt: Make sure to update forwarding headers if they are stale 2020-06-30 13:15:11 +02:00
cmake CMake: Fix incorrect SIMD arch_haswell and avx profile conditions 2020-07-09 23:02:39 +02:00
coin Revert "CMake: Propagate configure args to all repositories" 2020-07-08 21:14:18 +02:00
config.tests CMake: Skip regeneration of manual compile test project 2020-04-09 11:26:46 +02:00
dist Remove last remainings of Qt Quick 1 imports 2020-05-25 11:48:12 +02:00
doc Doc: Add WebSocket(s) as words ignored for auto-linking 2020-07-02 15:35:18 +02:00
examples Polish the settingseditor example 2020-07-10 11:31:09 +00:00
lib Purge all fonts 2015-08-18 19:59:14 +00:00
mkspecs Android: Enable configuring for a single abi architecture 2020-07-10 09:38:13 +00:00
qmake Silence some warnings about fallthrough 2020-07-09 08:32:23 +02:00
src Separate the error case when evaluating bindings 2020-07-10 15:07:07 +02:00
tests Separate the error case when evaluating bindings 2020-07-10 15:07:07 +02:00
util Remove unused imports 2020-07-10 02:36:54 +02:00
.cmake.conf pro2cmake.py: Generate .cmake.conf files for versioning 2020-04-30 17:44:03 +00:00
.gitattributes Update the git-archive export options 2012-09-07 15:39:31 +02:00
.gitignore Move QTextCodec support out of QtCore 2020-06-20 02:04:38 +02:00
.lgtm.yml Add config file for enabling LGTM analysis 2020-06-20 23:52:59 +02:00
.qmake.conf Bump version 2019-12-17 12:41:31 +01:00
.tag Update the git-archive export options 2012-09-07 15:39:31 +02:00
CMakeLists.txt CMake: Protect against Qt toolchain file recursive inclusion 2020-06-04 23:21:27 +02:00
config_help.txt CMake: Re-work configure flags for CMake generators 2020-07-06 17:43:35 +02:00
configure CMake: Teach configure.bat the -cmake argument 2020-07-06 17:43:28 +02:00
configure.bat CMake: Teach configure.bat the -cmake argument 2020-07-06 17:43:28 +02:00
configure.cmake CMake: Generate qdevice.pri when cross-building 2020-06-29 12:47:59 +02:00
configure.json Remove winrt 2020-06-06 20:25:49 +02:00
configure.pri Treat -xplatform or -device-option as being a cross compilation 2020-07-08 19:18:09 +02:00
dependencies.yaml Re-add dependencies.yaml so repos outside qt5 can be built with Coin 2019-09-19 17:07:36 +00:00
header.BSD Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.COMM Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.FDL Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.GPL Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.GPL-EXCEPT Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL3 Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL3-COMM Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL-NOGPL2 Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL-ONLY Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.MIT qsimd: add support for new x86 CPU features 2018-05-05 06:20:07 +00:00
INSTALL INSTALL: Remove outdated reference to Windows CE 2019-02-13 13:01:57 +00:00
LICENSE.FDL Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
LICENSE.GPL2 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.GPL3 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.GPL3-EXCEPT Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.LGPL3 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.LGPLv3 Remove LICENSE.GPLv3, LICENSE.LGPLv21, LGPL_EXCEPTION.txt 2018-04-16 11:02:14 +00:00
LICENSE.QT-LICENSE-AGREEMENT Update enterprise license agreement v4.2.1 2019-12-18 13:07:19 +02:00
qtbase.pro nuke configure -host-option 2016-12-13 18:55:59 +00:00
sync.profile Move UNIX themes into QtGui 2020-06-22 09:12:14 +02:00