aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/compiler/qqmltypecompiler.cpp
diff options
context:
space:
mode:
authorErik Verbruggen <erik.verbruggen@digia.com>2014-08-22 12:11:40 +0200
committerErik Verbruggen <erik.verbruggen@digia.com>2014-08-26 16:45:26 +0200
commitb926452f6c98e35fd87706fc637240cb47bac4bf (patch)
tree4cda0562b5544115177b732ad5df6f092d87d0a6 /src/qml/compiler/qqmltypecompiler.cpp
parent39286a50c32321981adb82ea47c93b7398b257d8 (diff)
V4: disable type inference and loop peeling for the interpreter.
Loop peeling is always disabled. Type inference is still enabled for QML code, because of the static-type nature of the properties. This speeds up crypto.js by 20%. Change-Id: Ibf51cb36f8904d64df0793980d463451dfd361e2 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src/qml/compiler/qqmltypecompiler.cpp')
-rw-r--r--src/qml/compiler/qqmltypecompiler.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/qml/compiler/qqmltypecompiler.cpp b/src/qml/compiler/qqmltypecompiler.cpp
index b960f4bb2d..90f775f781 100644
--- a/src/qml/compiler/qqmltypecompiler.cpp
+++ b/src/qml/compiler/qqmltypecompiler.cpp
@@ -218,6 +218,7 @@ bool QQmlTypeCompiler::compile()
QV4::ExecutionEngine *v4 = engine->v4engine();
QScopedPointer<QV4::EvalInstructionSelection> isel(v4->iselFactory->create(engine, v4->executableAllocator, &document->jsModule, &document->jsGenerator));
isel->setUseFastLookups(false);
+ isel->setUseTypeInference(true);
document->javaScriptCompilationUnit = isel->compile(/*generated unit data*/false);
}