aboutsummaryrefslogtreecommitdiffstats
path: root/src/qmlcompiler
diff options
context:
space:
mode:
authorUlf Hermann <ulf.hermann@qt.io>2020-10-23 15:34:06 +0200
committerUlf Hermann <ulf.hermann@qt.io>2020-10-27 09:23:12 +0100
commit31fb90d20b2df7c7c7763294942fa1cb5d76a732 (patch)
treee7130824448fde749647d4bfc1f5f65bd671e863 /src/qmlcompiler
parent675551f50c567a32e14b0af925d628d72fe2f250 (diff)
Don't AOT-compile boring bindings
Plain literals don't benefit from AOT compilation. Change-Id: I8f20991b3e330f688f977d57acbffef36818a76c Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Diffstat (limited to 'src/qmlcompiler')
-rw-r--r--src/qmlcompiler/qqmljscompiler.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/qmlcompiler/qqmljscompiler.cpp b/src/qmlcompiler/qqmljscompiler.cpp
index 8f49817851..36b7ee046b 100644
--- a/src/qmlcompiler/qqmljscompiler.cpp
+++ b/src/qmlcompiler/qqmljscompiler.cpp
@@ -217,6 +217,17 @@ bool qCompileQmlFile(const QString &inputFileName, QQmlJSSaveFunction saveFuncti
aotCompiler->setScopeObject(object);
std::for_each(object->bindingsBegin(), object->bindingsEnd(), [&](const QmlIR::Binding &binding) {
+
+ switch (binding.type) {
+ case QmlIR::Binding::Type_Boolean:
+ case QmlIR::Binding::Type_Number:
+ case QmlIR::Binding::Type_String:
+ case QmlIR::Binding::Type_Null:
+ return;
+ default:
+ break;
+ }
+
auto result = aotCompiler->compileBinding(binding);
if (auto *error = std::get_if<QQmlJS::DiagnosticMessage>(&result)) {
qCDebug(lcAotCompiler()) << "Could not compile binding:"