aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/compiler/qv4isel_p.h
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/qv4isel_p.h
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/qv4isel_p.h')
-rw-r--r--src/qml/compiler/qv4isel_p.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/qml/compiler/qv4isel_p.h b/src/qml/compiler/qv4isel_p.h
index 7048b33202..984e8ab4bf 100644
--- a/src/qml/compiler/qv4isel_p.h
+++ b/src/qml/compiler/qv4isel_p.h
@@ -60,6 +60,7 @@ public:
QV4::CompiledData::CompilationUnit *compile(bool generateUnitData = true);
void setUseFastLookups(bool b) { useFastLookups = b; }
+ void setUseTypeInference(bool onoff) { useTypeInference = onoff; }
int registerString(const QString &str) { return jsGenerator->registerString(str); }
uint registerIndexedGetterLookup() { return jsGenerator->registerIndexedGetterLookup(); }
@@ -76,6 +77,7 @@ protected:
virtual QV4::CompiledData::CompilationUnit *backendCompileStep() = 0;
bool useFastLookups;
+ bool useTypeInference;
QV4::ExecutableAllocator *executableAllocator;
QV4::Compiler::JSUnitGenerator *jsGenerator;
QScopedPointer<QV4::Compiler::JSUnitGenerator> ownJSGenerator;