Ilmir Usmanov
|
3d3da5d481
|
Preparser: new pass to order var_decls prior to parser
|
2014-10-07 20:14:41 +04:00 |
|
Ruben Ayrapetyan
|
6b02835547
|
Refactoring 'call_n' opcode handler so that it looks for meta 'this_arg' at start of argument list.
|
2014-09-26 15:13:43 +04:00 |
|
Ilmir Usmanov
|
0a4616b65f
|
Remove call_0, call_1, func_decl_0, func_decl_1, func_decl_2 opcodes.
|
2014-09-24 16:33:28 +04:00 |
|
Ruben Ayrapetyan
|
25ec2bea17
|
Refactoring function call operations to return 'normal' completion values instead of 'return' completion values. Removing ECMA_FUNCTION_CALL macro.
|
2014-09-24 14:27:27 +04:00 |
|
Ruben Ayrapetyan
|
c5dd81cf76
|
Fixing memory leak in opfunc_throw.
|
2014-09-05 20:28:02 +04:00 |
|
Ruben Ayrapetyan
|
b9fd80ce36
|
Fixing object declaration and function expression opcode handlers; adding unit test that declares object and operates on the object's properties.
|
2014-09-04 21:02:29 +04:00 |
|
Ruben Ayrapetyan
|
50371ddf20
|
Implementing Array construction routine; adding unit test on array operations.
|
2014-09-03 17:30:03 +04:00 |
|
Ruben Ayrapetyan
|
8e14f32806
|
Introducing getters/setters for ecma_object_t structure.
|
2014-08-29 15:53:07 +04:00 |
|
Ruben Ayrapetyan
|
f7968e617d
|
Adding several completion value construction and comparison helpers.
|
2014-08-29 12:51:06 +04:00 |
|
Ruben Ayrapetyan
|
227c09fb3e
|
Adding target counter and depth level to 'break' and 'continue' completion values.
|
2014-08-28 22:56:29 +04:00 |
|
Ruben Ayrapetyan
|
16cbe0c63b
|
Removing try_get_string_by_idx and get_number_by_idx.
|
2014-08-28 21:19:44 +04:00 |
|
Ruben Ayrapetyan
|
b36f997ef2
|
Determining if global code is strict code by checking if first opcode is 'meta' opcode of OPCODE_META_TYPE_STRICT_CODE type; setting 'configurableBindings' in 'var_decl' opcode to true if current code is eval code.
|
2014-08-28 20:29:42 +04:00 |
|
Ruben Ayrapetyan
|
b529fc2da9
|
Processing unhandled exception by exiting engine with ERR_UNHANDLED_EXCEPTION; determining if function's code is strict by checking for appearance of 'meta' opcode of OPCODE_META_TYPE_STRICT_CODE type at the beginning of the function's code.
|
2014-08-28 20:21:47 +04:00 |
|
Ruben Ayrapetyan
|
ddb2e6e9d5
|
Introducing and implementing 'throw' and 'try' opcode handlers.
|
2014-08-28 18:57:34 +04:00 |
|
Ruben Ayrapetyan
|
647f6b3c67
|
Renaming OPCODE_META_TYPE_OPCODE_COUNTER -> OPCODE_META_TYPE_FUNCTION_END.
|
2014-08-28 16:49:03 +04:00 |
|
Ruben Ayrapetyan
|
9d45f68370
|
Introducing 'opcode counter' type for 'meta' opcode; replacing 'jmp_down' opcodes that are used as pointers only with 'meta' opcodes of the introduced type.
|
2014-08-28 15:17:49 +04:00 |
|
Ruben Ayrapetyan
|
5d2b535cec
|
Implementing 'with' opcode; replacing 'end_with' opcode with 'meta' opcode of corresponding type.
|
2014-08-27 21:38:53 +04:00 |
|
Ruben Ayrapetyan
|
f08c242156
|
Implementing 'obj_decl' opcode; replacing 'prop', 'prop_get_decl', 'prop_set_decl' with 'meta' opcodes of corresponding types.
|
2014-08-27 20:43:31 +04:00 |
|
Ruben Ayrapetyan
|
d286a93e2c
|
Replacing 'varg' opcode with 'meta' opcode with corresponding type.
|
2014-08-27 19:35:56 +04:00 |
|
Ruben Ayrapetyan
|
2feb159fd8
|
Implementing 'array_decl' opcode handler.
|
2014-08-27 18:28:26 +04:00 |
|
Ruben Ayrapetyan
|
76121926d1
|
Splitting 'delete' opcode to 'delete_var' and 'delete_prop'. Implementing corresponding opcode handlers.
|
2014-08-27 17:12:59 +04:00 |
|
Ruben Ayrapetyan
|
05185bb2e9
|
Implementing 'native_call' opcode handler.
|
2014-08-27 15:38:31 +04:00 |
|
Ruben Ayrapetyan
|
bc2f827447
|
Implementing 'unreachable' handler for 'meta' opcode.
|
2014-08-27 13:45:27 +04:00 |
|
Ruben Ayrapetyan
|
f8907573dd
|
Implementing 'func_expr_n' opcode handler.
|
2014-08-26 22:15:40 +04:00 |
|
Ruben Ayrapetyan
|
6cfcedb053
|
Evaluation of expressions passed in arguments lists just before corresponding 'varg' opcodes.
|
2014-08-26 21:39:54 +04:00 |
|
Ruben Ayrapetyan
|
6f58335f23
|
Replacing 'varg_list' (3 args) with 'varg' (1 arg).
|
2014-08-26 20:50:41 +04:00 |
|
Ruben Ayrapetyan
|
bf5bda11ed
|
Implementing 'construct_n' opcode handler.
|
2014-08-26 17:47:14 +04:00 |
|
Ruben Ayrapetyan
|
9573b7234d
|
Implementing 'func_decl_n' and 'func_call_n' opcodes' handlers.
|
2014-08-26 17:30:23 +04:00 |
|
Ruben Ayrapetyan
|
02f31fbcfb
|
Adding 'func_expr_n' opcode; replacing arg1 and arg2 of 'func_decl_n' opcode with arg_list.
|
2014-08-26 15:58:57 +04:00 |
|
Ruben Ayrapetyan
|
7a80b7f4f1
|
Renaming 'construct_decl' opcode to 'construct_n'.
|
2014-08-26 12:50:23 +04:00 |
|
Ruben Ayrapetyan
|
dc3f529307
|
Implementing 'typeof' opcode handler.
|
2014-08-26 12:43:13 +04:00 |
|
Ruben Ayrapetyan
|
9a203c580e
|
Implementing 'this' opcode handler.
|
2014-08-26 12:17:29 +04:00 |
|
e.gavrin
|
4ffbdd2c3f
|
__opcode -> opcode_t
|
2014-08-23 02:01:56 +04:00 |
|
e.gavrin
|
a99907670b
|
OPCODE define replaced with opcode_t. T_IDX define replaced with idx_t.
|
2014-08-23 00:53:41 +04:00 |
|
e.gavrin
|
0eece0be5a
|
Remove not needed opcode-support.[c,h]
|
2014-08-23 00:24:49 +04:00 |
|
e.gavrin
|
d4a9d9430e
|
Refactoring of libcoreint part1
|
2014-08-23 00:16:56 +04:00 |
|
Ruben Ayrapetyan
|
a341fe044b
|
call_0, call_1 opcode handlers: wrapping function calls using ECMA_FUNCTION_CALL helper
|
2014-08-22 20:50:40 +04:00 |
|
Ruben Ayrapetyan
|
50a1532801
|
Implementing opfunc_instanceof using ecma_op_has_instance for [[HasInstance]] call
|
2014-08-22 15:39:23 +04:00 |
|
Ruben Ayrapetyan
|
7a20454047
|
Using ToString for property name conversion in opfunc_in
|
2014-08-22 15:26:05 +04:00 |
|
Ruben Ayrapetyan
|
9cc27115fa
|
Using ToString for property name conversion in opfunc_getter, opfunc_setter
|
2014-08-22 15:07:21 +04:00 |
|
e.gavrin
|
7bda6e9d01
|
Add opcode handlers for logical_[not, or, and]]
|
2014-08-22 01:27:37 +04:00 |
|
e.gavrin
|
8e4ff93436
|
Add instanceof opcode handler. Untested.
|
2014-08-22 00:29:42 +04:00 |
|
e.gavrin
|
3dc1f8df77
|
Add in opcode handler. Untested.
|
2014-08-21 23:59:58 +04:00 |
|
e.gavrin
|
b822c704e5
|
Add b_not opcode handler. Fixes in shift opcodes and in test
|
2014-08-21 22:52:34 +04:00 |
|
e.gavrin
|
7dea812364
|
Add shift opcodes handlers
|
2014-08-21 21:39:05 +04:00 |
|
e.gavrin
|
dfcc3a0986
|
Add retval opcode handler.
|
2014-08-21 20:01:50 +04:00 |
|
e.gavrin
|
c6a41c167e
|
Add native_call opcode.
|
2014-08-21 17:30:52 +04:00 |
|
e.gavrin
|
1261820838
|
Add meta opcode.
|
2014-08-21 16:07:05 +04:00 |
|
e.gavrin
|
5b2b04f5f9
|
Various opcode's refinements: obj[0,1, 2, n]->obj_decl, array[0, 1, 2, n]->array_decl, func_expr[0, 1, n]->removed, varg[1_end, 2_end, 3_end, 3]->varg_list.
|
2014-08-21 15:49:10 +04:00 |
|
Ruben Ayrapetyan
|
284e7fc91b
|
Renaming prop_access opcode to prop_getter; introducing prop_setter opcode; implementing property getter/setter opcode handlers.
|
2014-08-20 16:34:03 +04:00 |
|