69 Commits

Author SHA1 Message Date
Ruben Ayrapetyan
e54023caf2 Throwing CompactProfileError in cases required by Compact Profile. 2014-10-16 21:26:23 +04:00
Ilmir Usmanov
bd7fd40a32 Fix 'function' declaration parsing 2014-10-16 21:12:03 +04:00
Ilmir Usmanov
16556eb830 Fix 'switch' bytecode generation. Remove __strtof. Fix opcodes pretty-printing. 2014-10-16 15:33:54 +04:00
Ruben Ayrapetyan
e8d728f8ce Fixing typeof for boolean arguments. 2014-10-15 18:02:10 +04:00
Ruben Ayrapetyan
47ed774232 Fixing obj_decl opcode handler to handle property name argument as index of register variable containing a declared property's name. 2014-10-15 17:33:58 +04:00
Ilmir Usmanov
af5cf79d3c Use tmps as property names 2014-10-15 16:40:56 +04:00
Ruben Ayrapetyan
7dcbeec487 Fixing typeof with null argument. 2014-10-15 16:11:04 +04:00
Ilmir Usmanov
a9856dcf9a Add support of NaN in opfunc_unary_minus 2014-10-15 15:33:00 +04:00
Ilmir Usmanov
032031a861 Add unary_plus and unary_minus opcodes 2014-10-15 15:20:49 +04:00
Ilmir Usmanov
c8686d9d9b Fix test 2014-10-15 10:53:40 +04:00
Ilmir Usmanov
7a156334bb Fix vargs pretty-printing 2014-10-15 10:53:40 +04:00
Ruben Ayrapetyan
38b47eaba7 Reducing number of iterations in nested_function.js: 1000 -> 100. 2014-10-13 19:34:16 +04:00
Ilmir Usmanov
8a517ab03e Add support of octal integer literals 2014-10-13 17:45:20 +04:00
Ilmir Usmanov
c33afca360 Add support of 'default' clause in 'switch' statement 2014-10-13 16:32:17 +04:00
Ilmir Usmanov
9775d23274 Support 'delete' and 'void' operators in parser. 2014-10-08 14:52:38 +04:00
Ilmir Usmanov
62cc3cc604 Fix && and || parsing 2014-10-06 14:35:26 +04:00
Ilmir Usmanov
3d5fd214f3 Add switch-case 2014-10-06 14:35:26 +04:00
Ilmir Usmanov
af00691d1d Add this_arg dumping in parser 2014-10-02 19:31:29 +04:00
Ilmir Usmanov
6561c3fe6c Add support of array initialization like [1,,,'4'] 2014-09-30 19:44:45 +04:00
Ruben Ayrapetyan
47d384c565 Partial implementation of the Array.prototype built-in object. 2014-09-26 20:07:45 +04:00
Ruben Ayrapetyan
bef5289cb6 Adding stubs for Function and Function.prototype built-ins. 2014-09-26 19:26:17 +04:00
Ruben Ayrapetyan
ba2eeb84af Implementing String.prototype.toString and String.prototype.valueOf built-in routines. 2014-09-25 21:04:24 +04:00
Ilmir Usmanov
cde880b1cf Fix 'break' parsing 2014-09-25 18:06:21 +04:00
Ruben Ayrapetyan
c2ca158d19 Implementing Array built-in. 2014-09-25 14:58:45 +04:00
Ruben Ayrapetyan
3efdcfa2ea Implementing String built-in object. 2014-09-24 21:40:11 +04:00
Ruben Ayrapetyan
10ee3c4fb1 Implementing Math.pow built-in. 2014-09-24 18:49:41 +04:00
Ruben Ayrapetyan
44a2f7ba39 Implementing Math.log built-in. 2014-09-24 17:10:42 +04:00
Ruben Ayrapetyan
85a3a9a690 Implementing Math.exp built-in. 2014-09-24 16:01:57 +04:00
Ilmir Usmanov
0738ec6a54 Add generation of prop_setter. 2014-09-24 15:30:37 +04:00
Ilmir Usmanov
8bcc37d0f8 Fix prop_getter, construct_n, array_n generation. 2014-09-23 22:53:35 +04:00
Ruben Ayrapetyan
9b69ea4d6d Implementing Math.sqrt. 2014-09-23 21:56:44 +04:00
Ilmir Usmanov
f17ca4c455 Fix post_* opcodes generation 2014-09-23 20:32:22 +04:00
Ruben Ayrapetyan
6c422fec2e Implementing Math.min and Math.max built-ins. 2014-09-23 18:44:27 +04:00
Ruben Ayrapetyan
c5fd835931 Implementing Math.abs and Math.round built-ins. 2014-09-23 17:22:01 +04:00
Ilmir Usmanov
615903dbf5 Fix call expression without args bytecode generation 2014-09-22 20:21:44 +04:00
Ilmir Usmanov
56e6d2a380 Add if_else.js test. Fix bytecode generation. 2014-09-17 20:21:30 +04:00
Ilmir Usmanov
70cc5128cc Add test try_catch_finally.js. Fix parser and interpreter 2014-09-17 18:58:16 +04:00
Ruben Ayrapetyan
64613b5513 Reducing number of iterations in tests/jerry/nested_function.js 10000 -> 1000. 2014-09-17 12:55:22 +04:00
Ruben Ayrapetyan
57058c30ef Implementing rest unimplemented cases in ecma comparison routines. 2014-09-02 22:18:28 +04:00
Ruben Ayrapetyan
9acbaafc8e Implementing ecma-strings relational comparison helper. 2014-09-02 21:10:50 +04:00
Ruben Ayrapetyan
aa86a3643b Implementing remainder operation according to ECMA. Checking that implementations of other arithmetic operations already conform to ECMA and removing corresponding TODOs from them. 2014-09-02 15:09:36 +04:00
Ruben Ayrapetyan
afc21fad8e Simple implementation of string concatenations comparison. 2014-09-02 13:31:56 +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
dc3f529307 Implementing 'typeof' opcode handler. 2014-08-26 12:43:13 +04:00
Ruben Ayrapetyan
38fdcba69c Implementing opfunc_addition with a string-operand. 2014-08-26 11:26:47 +04:00
e.gavrin
7bda6e9d01 Add opcode handlers for logical_[not, or, and]] 2014-08-22 01:27:37 +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
471bbd9fc4 Test for function calls with args. 2014-08-15 20:14:02 +04:00