1. diet native getter, setter on Object

2. diet ByteCode
3. use get, setIndexedProperty in ByteCodeInterpreter
4. implement get, setIndexedProperty for typed array
5. move implemention of CallNativeFunctionOpcode to FunctionObject::call
6. remove m_contentLength, m_has8BitContent in RopeString
7. optimize ByteCodeInterpreter::getObjectPrecomputedCaseOperation, setObjectPrecomputedCaseOperation
8. diet Arguments object

Signed-off-by: seonghyun kim <sh8281.kim@samsung.com>
This commit is contained in:
seonghyun kim 2017-02-07 19:15:25 +09:00 committed by Young-il Choi
commit 0f1cc8999c
25 changed files with 282 additions and 265 deletions

View file

@ -124,7 +124,8 @@ void ArrayObject::convertIntoNonFastMode(ExecutionState& state)
ensureObjectRareData()->m_isFastModeArrayObject = false;
for (size_t i = 0; i < getArrayLength(state); i++) {
auto length = getArrayLength(state);
for (size_t i = 0; i < length; i++) {
if (!m_fastModeData[i].isEmpty()) {
defineOwnPropertyThrowsExceptionWhenStrictMode(state, ObjectPropertyName(state, Value(i)), ObjectPropertyDescriptor(m_fastModeData[i], ObjectPropertyDescriptor::AllPresent));
}