aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/jsruntime/qv4function_p.h
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@digia.com>2014-03-03 11:51:17 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-03-03 20:23:24 +0100
commit292fdc90865e8603e11bbbe3f2870004caeb0e35 (patch)
tree964cfe2ea959c1159618356ce8d99c6f1db03ff1 /src/qml/jsruntime/qv4function_p.h
parentfd8981d835f298306a39c5d32b1050bf8f9b5653 (diff)
Remove nArguments and name from QV4::Function
Saves 12 bytes per Function Change-Id: I9a495805f9201eb6162a520ff5c2defeb73dc37a Reviewed-by: Simon Hausmann <simon.hausmann@digia.com> Reviewed-by: Michael Brasser <michael.brasser@live.com>
Diffstat (limited to 'src/qml/jsruntime/qv4function_p.h')
-rw-r--r--src/qml/jsruntime/qv4function_p.h8
1 files changed, 3 insertions, 5 deletions
diff --git a/src/qml/jsruntime/qv4function_p.h b/src/qml/jsruntime/qv4function_p.h
index 377b45bfa3..530d67e3c8 100644
--- a/src/qml/jsruntime/qv4function_p.h
+++ b/src/qml/jsruntime/qv4function_p.h
@@ -81,8 +81,6 @@ struct InternalClass;
struct Lookup;
struct Function {
- StringValue name;
-
const CompiledData::Function *compiledFunction;
CompiledData::CompilationUnit *compilationUnit;
@@ -91,13 +89,15 @@ struct Function {
quint32 codeSize;
// first nArguments names in internalClass are the actual arguments
- int nArguments;
InternalClass *internalClass;
Function(ExecutionEngine *engine, CompiledData::CompilationUnit *unit, const CompiledData::Function *function,
ReturnedValue (*codePtr)(ExecutionContext *, const uchar *), quint32 _codeSize);
~Function();
+ inline StringRef name() {
+ return compilationUnit->runtimeStrings[compiledFunction->nameIndex];
+ }
inline QString sourceFile() const { return compilationUnit->fileName(); }
inline bool usesArgumentsObject() const { return compiledFunction->flags & CompiledData::Function::UsesArgumentsObject; }
@@ -107,8 +107,6 @@ struct Function {
inline bool needsActivation() const
{ return compiledFunction->nInnerFunctions > 0 || (compiledFunction->flags & (CompiledData::Function::HasDirectEval | CompiledData::Function::UsesArgumentsObject)); }
- void mark(ExecutionEngine *e);
-
int lineNumberForProgramCounter(qptrdiff offset) const;
QList<qptrdiff> programCountersForAllLines() const;
};