1. reduce ByteCode size with remove loc

2. store ByteCodeLOC in ByteCodeBlock & lazy store loc
3. optimize builtin Array.prototype.splice
4. optimize Value::toNumberSlowCase
5. optimize arguments object

Signed-off-by: seonghyun kim <sh8281.kim@samsung.com>
This commit is contained in:
seonghyun kim 2017-02-02 13:27:23 +09:00
commit ef9e0ed699
11 changed files with 108 additions and 38 deletions

View file

@ -79,8 +79,9 @@ CodeBlock* ScriptParser::generateCodeBlockTreeFromASTWalker(Context* ctx, String
}
CodeBlock* b = codeBlock;
b->m_canAllocateEnvironmentOnStack = false;
if (b->parameterNames().size()) {
b->m_canAllocateEnvironmentOnStack = false;
}
for (size_t j = 0; j < b->m_identifierInfos.size(); j++) {
b->m_identifierInfos[j].m_needToAllocateOnStack = false;
}
@ -222,7 +223,7 @@ Node* ScriptParser::parseFunction(CodeBlock* codeBlock)
Node* body = esprima::parseSingleFunction(m_context, codeBlock);
return body;
} catch (esprima::Error* orgError) {
//
puts(orgError->message->toUTF8StringData().data());
RELEASE_ASSERT_NOT_REACHED();
}
}