* when trying to use index property, we use only 32bit for index value (uint32_t)
* rename ArrayIndex as to Index32 and IndexProperty
* add cctest to verify the new api
Signed-off-by: HyukWoo Park <hyukwoo.park@samsung.com>
* Each chain piece represents one of class
* User can uses private member with same name parent with child class
* We should check nearest [[homeObject]] of function to find where function is located
Signed-off-by: Seonghyun Kim <sh8281.kim@samsung.com>
* handle class constructor as a virtual parameter which is passed for static field initialization function
Signed-off-by: HyukWoo Park <hyukwoo.park@samsung.com>
* remove JumpByteCode and add JumpFlowRecord which has no pointer value
* simplify JumpFlowRecord data caching
* fix coverity issue
* add log message for code cache
Signed-off-by: HyukWoo Park <hyukwoo.park@samsung.com>
* bf_context_t is now defined as a global variable and maintained during the runtime
* VMInstance::finalize is invoked at the end of program to guarantee the life time of bf_context_t
Signed-off-by: HyukWoo Park <hyukwoo.park@samsung.com>
* wrap initializer expr into virtual arrow function like instance field
* users can access super property in eval
Signed-off-by: Seonghyun Kim <sh8281.kim@samsung.com>
* fix JumpIfEqual bytecode correctly
* rename Jump* bytecode to represent its operation more intuitively
Signed-off-by: HyukWoo Park <hyukwoo.park@samsung.com>
* https://www.ecma-international.org/ecma-262/#sec-IsHTMLDDA-internal-slot
* IsHTMLDDA internal slot is an ECMAScript feature for Web Browsers
* IsHTMLDDA is currently enabled only for test mode (we can enable it later if it is really used by third party app)
* some related operations are optionally fixed
Signed-off-by: HyukWoo Park <hyukwoo.park@samsung.com>
* If the parser gets -1, the parser divide -1 into UnaryMinus and LiteralNode.
* This patch remove UnaryMinus and change Literal value negative
Signed-off-by: Seonghyun Kim <sh8281.kim@samsung.com>
* turn off ALWAYS_INLINE in small config
* turn off hidden class transition table in small config
Signed-off-by: Seonghyun Kim <sh8281.kim@samsung.com>
* Implement one of parsing error of module
* Fix one of stack usage error on FunctionObjectInlines
Signed-off-by: Seonghyun Kim <sh8281.kim@samsung.com>
* extract infrequently used m_rareData member from InterpretedCodeBlock
* InterpretedCodeBlockWithRareData handles InterpretedCodeBlockRareData inside itself
Signed-off-by: HyukWoo Park <hyukwoo.park@samsung.com>
* NativeCodeBlock is newly added for NativeFunctionObject
* all interpreter-related info is moved into InterpretedCodeBlock
Signed-off-by: HyukWoo Park <hyukwoo.park@samsung.com>