aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/jsruntime/qv4functionobject.cpp
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@qt.io>2017-01-04 15:58:58 +0100
committerLars Knoll <lars.knoll@qt.io>2017-01-25 08:31:06 +0000
commit3e67a40860e0cda4cf6118c97e47cbe55aa672d6 (patch)
tree6e6cb9bc96b57b39602fde70b874fbb148b2bfd8 /src/qml/jsruntime/qv4functionobject.cpp
parent1df5fb40b5417995f4121c15392f56a7bb19e0c2 (diff)
Inline creation of simple call contexts
And avoid zero initializing stuff that's already 0 Change-Id: If90a808815b2b735bab661d22cbd498acc96b029 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'src/qml/jsruntime/qv4functionobject.cpp')
-rw-r--r--src/qml/jsruntime/qv4functionobject.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/qml/jsruntime/qv4functionobject.cpp b/src/qml/jsruntime/qv4functionobject.cpp
index 1ac0e28a1b..3bbccdba2f 100644
--- a/src/qml/jsruntime/qv4functionobject.cpp
+++ b/src/qml/jsruntime/qv4functionobject.cpp
@@ -484,14 +484,14 @@ void BuiltinFunction::call(const Managed *that, Scope &scope, CallData *callData
ExecutionContextSaver ctxSaver(scope);
- CallContext::Data *ctx = CallContext::Data::createSimpleContext(v4);
+ CallContext::Data *ctx = v4->memoryManager->allocSimpleCallContext(v4);
ctx->strictMode = f->scope()->strictMode; // ### needed? scope or parent context?
ctx->callData = callData;
v4->pushContext(ctx);
Q_ASSERT(v4->current == ctx);
scope.result = f->d()->code(static_cast<QV4::CallContext *>(v4->currentContext));
- ctx->freeSimpleCallContext();
+ v4->memoryManager->freeSimpleCallContext();
}
void IndexedBuiltinFunction::call(const Managed *that, Scope &scope, CallData *callData)
@@ -506,14 +506,14 @@ void IndexedBuiltinFunction::call(const Managed *that, Scope &scope, CallData *c
ExecutionContextSaver ctxSaver(scope);
- CallContext::Data *ctx = CallContext::Data::createSimpleContext(v4);
+ CallContext::Data *ctx = v4->memoryManager->allocSimpleCallContext(v4);
ctx->strictMode = f->scope()->strictMode; // ### needed? scope or parent context?
ctx->callData = callData;
v4->pushContext(ctx);
Q_ASSERT(v4->current == ctx);
scope.result = f->d()->code(static_cast<QV4::CallContext *>(v4->currentContext), f->d()->index);
- ctx->freeSimpleCallContext();
+ v4->memoryManager->freeSimpleCallContext();
}
DEFINE_OBJECT_VTABLE(IndexedBuiltinFunction);