81 Commits

Author SHA1 Message Date
Ilmir Usmanov
8c7dc08d93 Add literals - replacements of strings and numbers in parser. 2014-10-31 21:22:52 +04:00
Ruben Ayrapetyan
05cf2dbe04 Providing cp_minimal build mode.
In the mode built-in objects except Global, Object, Object.prototype, Function,
Function.prototype, [[ThrowTypeError]] and CompactProfileError are disabled.

Making default builds (without cp cp_minimal modes set) to not define CONFIG_ECMA_COMPACT_PROFILE.
Removing some tests that depend on 'eval'-like functionality or CompactProfileError built-in from pre-commit testing.
2014-10-31 18:37:55 +03:00
Ruben Ayrapetyan
bd5f4c0c69 Adding test for some limitations that take effect in strict mode. 2014-10-30 18:22:52 +03:00
Ruben Ayrapetyan
4160262ce8 Implementing EvalError, RangeError, SyntaxError, URIError built-ins and corresponding prototype built-in objects. 2014-10-30 14:28:44 +03:00
Ruben Ayrapetyan
66cb7e316d Implementing ReferenceError and ReferenceError.prototype built-ins. 2014-10-29 21:28:56 +03:00
Ruben Ayrapetyan
6991b26e04 Implementing TypeError and TypeError.prototype built-ins. Fixing Error.prototype.toString implementation. 2014-10-29 21:15:36 +03:00
Ruben Ayrapetyan
4e6f5c7716 Implementing Error and Error.prototype built-in objects. 2014-10-29 18:49:31 +03:00
Ilmir Usmanov
4735570b31 Add SyntaxErrors on parsing ObjectDeclarations. 2014-10-28 13:39:25 +04:00
Ruben Ayrapetyan
1a6ca3108b Turning some strict comparisons in tests/jerry/math_log.js and tests/jerry/sqrt.js into range check comparisons. 2014-10-23 20:34:43 +04:00
Ruben Ayrapetyan
7f4a70ccb5 Improving precision of zt-string to ecma-number conversion. 2014-10-23 15:46:42 +04:00
Ilmir Usmanov
ec6572d501 Add support of function expressions scopes. Uncomment tests. 2014-10-21 22:22:04 +04:00
Ilmir Usmanov
62a42fa087 Add fail tests. Fix parser. 2014-10-21 20:35:07 +04:00
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