diff options
author | Simon Hausmann <simon.hausmann@qt.io> | 2016-06-06 13:12:02 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@qt.io> | 2016-06-07 03:32:06 +0000 |
commit | 4f322f7f2c46e7ffc172400010a944afd4b51489 (patch) | |
tree | 90ea5bc2c027f4947e4a3aba4309c5540601dc9e | |
parent | 921c1e0e4f6f00f449136f116c6fc5f55fbf1df6 (diff) |
Clean up CompiledData::Function
* We don't need 64 bits for the flags, for now 8 bits are sufficient.
* Removed the unused index member. It's symmetric to the index of the
function object in the function table anyway.
Change-Id: I18248e8ed79b3c3af87e17689dadf7323d5d9bb3
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
-rw-r--r-- | src/qml/compiler/qv4compileddata_p.h | 3 | ||||
-rw-r--r-- | src/qml/compiler/qv4compiler.cpp | 5 | ||||
-rw-r--r-- | src/qml/compiler/qv4compiler_p.h | 2 |
3 files changed, 4 insertions, 6 deletions
diff --git a/src/qml/compiler/qv4compileddata_p.h b/src/qml/compiler/qv4compileddata_p.h index 744d2bb8da..9be45184a7 100644 --- a/src/qml/compiler/qv4compileddata_p.h +++ b/src/qml/compiler/qv4compileddata_p.h @@ -179,9 +179,8 @@ struct Function HasCatchOrWith = 0x10 }; - quint32 index; // in CompilationUnit's function table + quint8 flags; quint32 nameIndex; - qint64 flags; quint32 nFormals; quint32 formalsOffset; quint32 nLocals; diff --git a/src/qml/compiler/qv4compiler.cpp b/src/qml/compiler/qv4compiler.cpp index aacf0e9928..81f407485f 100644 --- a/src/qml/compiler/qv4compiler.cpp +++ b/src/qml/compiler/qv4compiler.cpp @@ -268,7 +268,7 @@ QV4::CompiledData::Unit *QV4::Compiler::JSUnitGenerator::generateUnit(GeneratorO if (function == irModule->rootFunction) unit->indexOfRootFunction = i; - const int bytes = writeFunction(f, i, function); + const int bytes = writeFunction(f, function); f += bytes; } @@ -307,13 +307,12 @@ QV4::CompiledData::Unit *QV4::Compiler::JSUnitGenerator::generateUnit(GeneratorO return unit; } -int QV4::Compiler::JSUnitGenerator::writeFunction(char *f, int index, QV4::IR::Function *irFunction) +int QV4::Compiler::JSUnitGenerator::writeFunction(char *f, QV4::IR::Function *irFunction) { QV4::CompiledData::Function *function = (QV4::CompiledData::Function *)f; quint32 currentOffset = sizeof(QV4::CompiledData::Function); - function->index = index; function->nameIndex = getStringId(*irFunction->name); function->flags = 0; if (irFunction->hasDirectEval) diff --git a/src/qml/compiler/qv4compiler_p.h b/src/qml/compiler/qv4compiler_p.h index 0321a83b4f..df10e9919b 100644 --- a/src/qml/compiler/qv4compiler_p.h +++ b/src/qml/compiler/qv4compiler_p.h @@ -114,7 +114,7 @@ struct Q_QML_PRIVATE_EXPORT JSUnitGenerator { QV4::CompiledData::Unit *generateUnit(GeneratorOption option = GenerateWithStringTable); // Returns bytes written - int writeFunction(char *f, int index, IR::Function *irFunction); + int writeFunction(char *f, IR::Function *irFunction); StringTableGenerator stringTable; private: |