Ruben Ayrapetyan
2d032a30dc
Extracting ecma_number_trunc helper from ecma_op_number_remainder.
2014-10-20 20:48:36 +04:00
Ruben Ayrapetyan
42abd7d63a
Moving ecma-number mathematical constants to src/libecmaobjects/ecma-globals.h.
2014-10-20 20:48:36 +04:00
Ruben Ayrapetyan
491893efb9
Fixing ecma_number_substract.
2014-10-20 20:44:58 +04:00
Ruben Ayrapetyan
3eed2d0d4c
Renaming ecma_op_number_{add,subtract,multiply,divide} -> ecma_number_{add,subtract,multiply,divide}.
...
Moving ecma_number_{add,subtract,multiply,divide} to src/libecmaobjects/ecma-helpers-number.c.
Moving abs, sqrt, ln, exp, calculation helpers from src/libecmabuiltins/ecma-builtin-math-object.c to src/libecmaobjects/ecma-helpers-number.c.
2014-10-20 18:48:10 +04:00
Ruben Ayrapetyan
512d816568
Fixing Number.MIN_VALUE and Number.MAX_VALUE values for CONFIG_ECMA_NUMBER_FLOAT64 mode.
2014-10-20 17:31:41 +04:00
Ruben Ayrapetyan
9e890827f7
Fixing build in CONFIG_ECMA_NUMBER_FLOAT64 mode.
2014-10-20 13:46:41 +04:00
Ruben Ayrapetyan
6ebd96f903
Improving precision of string to number conversion in ecma_zt_string_to_number.
2014-10-20 13:46:13 +04:00
Ruben Ayrapetyan
dce3e5db59
Removing assertions about fitting of uint32_t and int32_t to ecma_number_t as they are incorrect under CONFIG_ECMA_NUMBER_FLOAT32.
2014-10-16 20:24:05 +04:00
Ruben Ayrapetyan
ed960b78db
Introducing CompactProfileError built-in object.
2014-10-16 19:49:47 +04:00
Ruben Ayrapetyan
c231893b28
Implementation of Number built-in object and partial implementation of Number.prototype built-in object.
...
Fixing [[Prototype]] and [[Class]] properties of Array and String built-in objects.
2014-10-16 13:25:47 +04:00
Ruben Ayrapetyan
e8d728f8ce
Fixing typeof for boolean arguments.
2014-10-15 18:02:10 +04:00
Ruben Ayrapetyan
e9a632ea4e
Fixing sign of converted number in ecma_zt_string_to_number.
2014-10-14 19:11:11 +04:00
Ruben Ayrapetyan
c4ba033970
Renaming ERR_MEMORY -> ERR_OUT_OF_MEMORY.
2014-10-14 14:08:38 +04:00
Ruben Ayrapetyan
6430a104b3
ecma_ref_ecma_string -> ecma_copy_or_ref_ecma_string: copying ecma-string when the string's reference counter reaches maximum value.
2014-10-13 18:59:07 +04:00
Ruben Ayrapetyan
9a15286aad
Fixing ecma_gc_is_object_may_ref_younger_objects.
2014-10-13 18:35:27 +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
a0a2ec2cea
Replacing items of ecma_object_class_t with corresponding ecma magic strings.
2014-09-26 18:04:42 +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
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
c4ec42635b
Implementing String's constructor and [[GetOwnProperty]].
2014-09-24 21:31:24 +04:00
Ruben Ayrapetyan
44a2f7ba39
Implementing Math.log built-in.
2014-09-24 17:10:42 +04:00
Ruben Ayrapetyan
9b69ea4d6d
Implementing Math.sqrt.
2014-09-23 21:56:44 +04:00
Ruben Ayrapetyan
5f9a068a61
Adding magic strings for the Math object's properties names.
2014-09-22 21:34:11 +04:00
Ruben Ayrapetyan
1e642fd527
Implementing ToPropertyDescriptor and FromPropertyDescriptor ECMA operations.
2014-09-22 19:31:35 +04:00
Ruben Ayrapetyan
d7314a7300
Adding stubs for the Object object.
2014-09-22 15:56:50 +04:00
Ruben Ayrapetyan
34984d31de
Adding comment to parameter of ecma_number_make_infinity.
2014-09-19 18:13:39 +04:00
Ruben Ayrapetyan
f46853bdd8
Introducing interfaces for invoking built-in functions and constructors.
...
Implementing property instantiation routine dispatcher for Global object.
Adding instantiation for 'undefined', 'NaN', 'Infinity' and built-in routine
properties of the Global Object. Implementing isNaN and isFinite built-in routines.
2014-09-19 18:10:49 +04:00
Ruben Ayrapetyan
1dd631178f
Renaming ecma_get_object_has_non_instantiated_builtins -> ecma_get_object_is_builtin, ecma_set_object_has_non_instantiated_builtins -> ecma_set_object_is_builtin.
2014-09-19 17:51:40 +04:00
Ruben Ayrapetyan
d44b13e0cd
Adding magic strings for the Global object's properties names.
2014-09-19 17:45:52 +04:00
Ruben Ayrapetyan
f478e161e6
Fixing ecma_string_to_zt_string and ecma_copy_zt_string_to_buffer routines.
2014-09-19 16:15:42 +04:00
Ruben Ayrapetyan
7fc3b178d8
Introducing ecma_is_string_magic, ecma_init and ecma_finalize interfaces, 'magic-string' container type for ecma-strings. Renaming ecma_is_magic_string to ecma_is_zt_string_magic. Moving magic-string related routines to ecma-helpers-string.c.
2014-09-19 12:08:19 +04:00
Ruben Ayrapetyan
9a667596de
Implementing constructor of Function object for built-in routines.
2014-09-18 19:48:43 +04:00
Ruben Ayrapetyan
11cf22f06c
Introducing 'ecmabuiltins' component and interface for instantiating built-in properties.
2014-09-17 21:12:05 +04:00
Ruben Ayrapetyan
2edc921be7
Introducing has_non_instantiated_built_in_properties flag in ecma_object_t and 'built-in function' object type.
2014-09-17 20:05:15 +04:00
Ruben Ayrapetyan
dafbaa742e
Adding configuration option for ECMA exception support.
2014-09-08 19:09:34 +04:00
Ruben Ayrapetyan
5a9d4563ec
Fixing performance degradation that occured in commit 9b040f31d2a2e1e4d43dd347d5e81282997dd2b5.
2014-09-05 16:27:43 +04:00
Ruben Ayrapetyan
31b5451b50
Moving label descriptor from ecma_completion_value_t to separate structure on heap (fixing performance degradation that occured in commit 5d92544db57203603a6ed53b5c18562065a70b77).
2014-09-04 14:27:40 +04:00
Ruben Ayrapetyan
76de0e9a06
Improving precision of ecma_number_to_string in case number can be represented as UInt32.
2014-09-03 15:05:58 +04:00
Ruben Ayrapetyan
3dc9a5838a
Fixing ecma_uint32_to_string helper.
2014-09-02 21:55:04 +04:00
Ruben Ayrapetyan
9acbaafc8e
Implementing ecma-strings relational comparison helper.
2014-09-02 21:10:50 +04:00
Ruben Ayrapetyan
0a6e1a83f8
Renaming ecma_compare_ecma_string_to_ecma_string to ecma_compare_ecma_strings.
2014-09-02 20:16:41 +04:00
Ruben Ayrapetyan
11d772fda4
Implementing unimplemented cases in ecma comparison routines.
2014-09-02 19:57:55 +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
4d9602ba0d
Supporting string concatenations that are longer than 64k.
2014-09-01 22:11:54 +04:00
Ruben Ayrapetyan
813831a23b
Decimal conversion of Number to zt-string (still not precise enough). Zt-string copy and length calculation helpers.
2014-09-01 21:12:02 +04:00
Ruben Ayrapetyan
e35f54fe86
Implementing ECMA String to Number conversion helper.
2014-08-29 22:46:38 +04:00