diff options
author | Lars Knoll <lars.knoll@digia.com> | 2013-08-16 12:54:30 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-08-17 09:26:30 +0200 |
commit | 3cfc7e0c026faf70eff8e180a2df3a01b34491c0 (patch) | |
tree | dcac9d9a70e1664452647f5c165cb2f7a5692692 /src/qml/compiler/qv4isel_p.h | |
parent | 51e7447481a472ef542e7c6e7b669574ba366a9d (diff) |
Move arguments object creation into the generated code
So far we've been creating the arguments object at runtime
in initCallContext(). It's much more efficient to simply add
arguments as a local variable in qv4codegen if it's being used
and initialize it through a builtin method.
Change-Id: I6913f3565adf3aa1917adae8dceef9f50ecf1722
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.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/qml/compiler/qv4isel_p.h b/src/qml/compiler/qv4isel_p.h index 965caf2cba..2de7ba6306 100644 --- a/src/qml/compiler/qv4isel_p.h +++ b/src/qml/compiler/qv4isel_p.h @@ -128,6 +128,7 @@ public: // to implement by subclasses: virtual void callBuiltinDefineProperty(V4IR::Temp *object, const QString &name, V4IR::Temp *value) = 0; virtual void callBuiltinDefineArray(V4IR::Temp *result, V4IR::ExprList *args) = 0; virtual void callBuiltinDefineObjectLiteral(V4IR::Temp *result, V4IR::ExprList *args) = 0; + virtual void callBuiltinSetupArgumentObject(V4IR::Temp *result) = 0; virtual void callValue(V4IR::Temp *value, V4IR::ExprList *args, V4IR::Temp *result) = 0; virtual void callProperty(V4IR::Temp *base, const QString &name, V4IR::ExprList *args, V4IR::Temp *result) = 0; virtual void callSubscript(V4IR::Temp *base, V4IR::Temp *index, V4IR::ExprList *args, V4IR::Temp *result) = 0; |