389 Commits

Author SHA1 Message Date
Ruben Ayrapetyan
bf1841ce54 Full implementation of GetValue, PutValue operations. 2014-08-22 20:27:07 +04:00
Ruben Ayrapetyan
6801f22bd9 Introducing ECMA_FUNCTION_CALL helper macro for handling return completion values of function calls. 2014-08-22 20:26:23 +04:00
Ruben Ayrapetyan
80e6cd3a60 Fixing ecma_create_arguments_object: adding deref for allocated ecma-string 2014-08-22 18:47:46 +04:00
Ruben Ayrapetyan
077392e5c5 Fixing ecma_compare_zt_string_to_zt_string 2014-08-22 18:44:54 +04:00
Ruben Ayrapetyan
f266b84016 Adding configuration header file for engine's parameters/limitations 2014-08-22 18:29:39 +04:00
Ruben Ayrapetyan
dca9bcc387 Removing ECMA_TYPE__COUNT enum value; fixing comment to ecma_copy_value 2014-08-22 17:50:57 +04:00
Ruben Ayrapetyan
a8486b01ed Partial implementation of 'Object' object construction routine 2014-08-22 17:18:29 +04:00
Ruben Ayrapetyan
3bcf02137e Adding stub for Array construction routine 2014-08-22 17:17:17 +04:00
Ruben Ayrapetyan
5713373279 Partial implementation of [[Construct]] routine for Function objects 2014-08-22 16:56:00 +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
b1b6ae5a41 Partial implementation of [[HasInstance]] ecma-object's operation 2014-08-22 15:24:09 +04:00
Ruben Ayrapetyan
9cc27115fa Using ToString for property name conversion in opfunc_getter, opfunc_setter 2014-08-22 15:07:21 +04:00
Ruben Ayrapetyan
f7cdb454ed Implementing ToString operation (ecma_op_to_string) 2014-08-22 14:40:58 +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
Ruben Ayrapetyan
7d38fee700 Implementing comparison of ecma-strings for different types of string containers. 2014-08-21 19:54:11 +04:00
e.gavrin
c6a41c167e Add native_call opcode. 2014-08-21 17:30:52 +04:00
Ruben Ayrapetyan
616c96d3bb Implementing ecma_string_to_zt_string for number-represented string and strings that are stored in literal table 2014-08-21 16:46:45 +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
a96705701d Implementing prototype of ToString (Number) routine - ecma_number_to_zt_string; adding unit tests for the routine. 2014-08-21 14:43:43 +04:00
Ruben Ayrapetyan
5095bd31c9 Ecma-number decoding helpers 2014-08-20 19:20:03 +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
Ruben Ayrapetyan
fe34bf7e01 Fixing: deallocation of number-represented ecma-string; [[Get]] of Arguments object for index arguments. 2014-08-20 13:47:51 +04:00
Ruben Ayrapetyan
f9ff4e1ba3 Reducing includes of system headers in jerry-libc.c (LIBC_RAW). 2014-08-19 20:51:30 +04:00
Ruben Ayrapetyan
50554a81e4 Implementing Arguments object construction, [[Get]], [[GetOwnProperty]], [[DefineOwnProperty]], [[Delete]] routines. 2014-08-19 19:17:03 +04:00
Ilmir Usmanov
a2fe594d0f Merge branch 'geppetto' 2014-08-19 16:22:39 +04:00
Ilmir Usmanov
126b8814a8 Add rules to check switch-cases 2014-08-19 16:22:05 +04:00
e.gavrin
0fb8076d2a fix formatting issues in src/*. Ignore #define.. in jerry_funcname_space_parentheses.tcl 2014-08-19 15:03:05 +04:00
Ruben Ayrapetyan
9d33a91822 Storing literals' indexes instead of literals' contents in ecma-strings if possible. 2014-08-18 20:52:02 +04:00
Ruben Ayrapetyan
8bc41358ec Replacing const ecma_char_t* with ecma_string_t*; supporting number-represented string in ecma_string_t. 2014-08-18 18:34:34 +04:00
Ruben Ayrapetyan
15b65a27fb Moving type conversion helpers from libecmaoperations to libecmaobjects. 2014-08-18 16:26:22 +04:00
Ruben Ayrapetyan
bcddffbefb Preparations to lazy conversion of Number to String: introducing ECMA_STRING_CONTAINER_HEAP_NUMBER container type for ecma_string_t. 2014-08-18 16:10:54 +04:00
Ruben Ayrapetyan
04112c6fea Implementing opfunc_call_1. 2014-08-15 20:10:22 +04:00
Ruben Ayrapetyan
116a80f8ae Ilmir's fix of register variables counting. 2014-08-15 19:46:02 +04:00
Ruben Ayrapetyan
b582d56ecb Implementing opfunc_decl_1, opfunc_decl_2. 2014-08-15 18:30:47 +04:00
Ruben Ayrapetyan
4de3da90a5 Implementing function's argument variables instantiation during function call. Implementing function declaration routine. 2014-08-15 17:30:11 +04:00
Ruben Ayrapetyan
04c6cb30c7 Adding ecma_is_lexical_environment_global helper. 2014-08-15 17:26:49 +04:00
Ruben Ayrapetyan
21a84afc4f Adding ecma_is_property_enumerable, ecma_is_property_configurable helpers. 2014-08-15 17:22:29 +04:00
Ruben Ayrapetyan
8f08c1c70e Fixing collections' construction and iteration routines. 2014-08-15 17:21:21 +04:00
Ruben Ayrapetyan
2a199cc6a7 Iterators for ecma-values collections 2014-08-15 15:58:34 +04:00
Ruben Ayrapetyan
cf098ad4ac Adding missing 'break's in ecma_op_{create,initialize}_immutable_binding. 2014-08-14 21:36:33 +04:00
Ruben Ayrapetyan
f638c381a3 Introducing ecma-values collection. Implementing ecma-strings collection through ecma-values collection. 2014-08-14 21:19:56 +04:00
e.gavrin
af798a7142 Fix mistype in opfunc_greater_or_equal_than and opfunc_less_or_equal_than opcodes 2014-08-14 20:42:28 +04:00
Ruben Ayrapetyan
1d70fe0a37 Fixing ecma_op_abstract_equality_compare 2014-08-14 20:03:50 +04:00