699 Commits

Author SHA1 Message Date
Ruben Ayrapetyan
add24b93fe Fixing various FIXMEs that depend on Function.prototype built-in. 2014-09-26 19:36:14 +04:00
Ruben Ayrapetyan
bef5289cb6 Adding stubs for Function and Function.prototype built-ins. 2014-09-26 19:26:17 +04:00
Ruben Ayrapetyan
2d332bc98b Implementing 'Object.prototype.toString' and 'Object.prototype.valueOf' built-ins. 2014-09-26 18:50:46 +04:00
Ruben Ayrapetyan
f82ae90040 Fixing various FIXMEs that depend on built-in Object constructor and Object.prototype. 2014-09-26 18:33:50 +04:00
Ruben Ayrapetyan
a0a2ec2cea Replacing items of ecma_object_class_t with corresponding ecma magic strings. 2014-09-26 18:04:42 +04:00
Ruben Ayrapetyan
897ed2d5c2 Adding stubs for Object.prototype routines. 2014-09-26 17:47:53 +04:00
Ruben Ayrapetyan
508573b398 Compacting declaration of dispatch routines for built-in objects. 2014-09-26 17:07:04 +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
e.gavrin
24c75a5707 Add config for doxygen. 2014-09-26 08:01:43 +04:00
Ruben Ayrapetyan
ba2eeb84af Implementing String.prototype.toString and String.prototype.valueOf built-in routines. 2014-09-25 21:04:24 +04:00
Ruben Ayrapetyan
5bee6cad0f Adding stubs for String.prototype routines. 2014-09-25 20:39:00 +04:00
Ruben Ayrapetyan
caa2663b28 Adding magic strings for property names of built-in prototype objects. 2014-09-25 19:23:22 +04:00
Ruben Ayrapetyan
c235021147 Implementing [[DefaultValue]] general objects' method. 2014-09-25 18:37:38 +04:00
Ilmir Usmanov
cde880b1cf Fix 'break' parsing 2014-09-25 18:06:21 +04:00
Ruben Ayrapetyan
f380b30e75 Fixing 'print' native call. 2014-09-25 16:08:48 +04:00
Ilmir Usmanov
42876bdc8f Add support of native calls 2014-09-25 15:57:57 +04:00
Ruben Ayrapetyan
c2ca158d19 Implementing Array built-in. 2014-09-25 14:58:45 +04:00
Ruben Ayrapetyan
448b67f6dd Fixing memory leak and type of completion value in implementation of Object.defineProperty built-in. 2014-09-25 14:21:57 +04:00
Ruben Ayrapetyan
c06c6a5ed8 Introducing ecma_free_property_descriptor. 2014-09-25 14:19:09 +04:00
Ruben Ayrapetyan
4c5c48eef2 Magic strings for Array built-in. 2014-09-25 14:18:07 +04:00
Ruben Ayrapetyan
679d86dc8f Passing 'this' argument to built-in routines. 2014-09-24 23:19:32 +04:00
Ruben Ayrapetyan
3efdcfa2ea Implementing String built-in object. 2014-09-24 21:40:11 +04:00
Ruben Ayrapetyan
c4ec42635b Implementing String's constructor and [[GetOwnProperty]]. 2014-09-24 21:31:24 +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
Ilmir Usmanov
05a2224faa Fix parsing of assignment expressions without assignment operator. 2014-09-24 16:53:58 +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
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
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
3a31bf6eb1 Adding 'print' native call. 2014-09-24 14:22:57 +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
34a5e00b7f Implementing Math.random. 2014-09-23 20:25:59 +04:00
Ilmir Usmanov
d26b7f9f4e Fix reg_var_decl generation. 2014-09-23 20:05:10 +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
Ruben Ayrapetyan
4798807451 Fixing remainder calculation operation (ecma_op_number_remainder). 2014-09-23 17:22:01 +04:00
Ilmir Usmanov
8a5b956e38 Simplify serializer/deserializer. Reduce memory usage in lexer. Create HashTable data structure. Finish preparations for introducing new strings addressation. 2014-09-23 16:45:10 +04:00
Ruben Ayrapetyan
f237a8d5e1 Adding stubs for Math object's routines. 2014-09-23 16:23:36 +04:00
Ruben Ayrapetyan
288478926e Implementing Math object's value properties. 2014-09-23 15:32:32 +04:00
Ruben Ayrapetyan
ae244f0148 Common built-in object's constructor. 2014-09-23 15:29:08 +04:00
Ruben Ayrapetyan
fd7f153747 Additional assertions in jrt_{get/set}_bit_field_value. 2014-09-23 15:23:50 +04:00
Ruben Ayrapetyan
1fed738217 Replacing ecma_builtin_is_*_object interfaces with ecma_builtin_is (object, builtin_id), and ecma_builtin_get_*_object with ecma_builtin_get (builtin_id). 2014-09-22 21:46:26 +04:00
Ruben Ayrapetyan
5f9a068a61 Adding magic strings for the Math object's properties names. 2014-09-22 21:34:11 +04:00
Ilmir Usmanov
615903dbf5 Fix call expression without args bytecode generation 2014-09-22 20:21:44 +04:00
Ruben Ayrapetyan
49486757ca Implementing 'Object.defineProperty' built-in routine. 2014-09-22 20:07:29 +04:00
Ruben Ayrapetyan
1e642fd527 Implementing ToPropertyDescriptor and FromPropertyDescriptor ECMA operations. 2014-09-22 19:31:35 +04:00
Ruben Ayrapetyan
a287406e1f Implementing 'new Object(...)' built-in constructor. 2014-09-22 18:19:34 +04:00