Ruben Ayrapetyan
41b7ca2faa
Fixing 'in' opcode handler.
2014-10-15 17:41:48 +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
Ruben Ayrapetyan
b3f45c5c82
Fixing ecma_op_abstract_equality_compare.
2014-10-15 16:56:58 +04:00
Ruben Ayrapetyan
f4ff85e861
Fixing test 11/11.02/11.02.02/11.02.02-008.js from internal test suite.
2014-10-15 16:56:58 +04:00
Ruben Ayrapetyan
e5b0bb1a0d
Fixing ecma_op_abstract_equality_compare.
2014-10-15 16:56:58 +04:00
Ruben Ayrapetyan
4e9958edb5
Fixing mistype in 12.06.02-005.js.
2014-10-15 16:56:58 +04:00
Ruben Ayrapetyan
2d9a8da5c2
Fixing some tests from internal test suite.
2014-10-15 16:11:05 +04:00
Ruben Ayrapetyan
efe713f2a9
Fixing memory leak in ecma_op_function_construct.
2014-10-15 16:11:04 +04:00
Ruben Ayrapetyan
2a8adf7698
Fixing memory leak in ecma_op_string_object_get_own_property.
2014-10-15 16:11:04 +04:00
Ruben Ayrapetyan
7dcbeec487
Fixing typeof with null argument.
2014-10-15 16:11:04 +04:00
Ruben Ayrapetyan
391b6caebe
Fixing this_arg handling in opfunc_call_n.
2014-10-15 13:57:26 +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
427dd83d99
Fixing postfix increment and postfix decrement opcodes handlers.
2014-10-14 18:52:06 +04:00
Ruben Ayrapetyan
ab5a66cebe
Implementing __aeabi_llsr (ARM Runtime ABI: long long right shift).
2014-10-14 18:09:11 +04:00
Ruben Ayrapetyan
4689f6c3c5
Handling elements bigger than 8 bytes in linked_list_set_element.
2014-10-14 17:35:07 +04:00
Ruben Ayrapetyan
004541fdc4
loop_demo.js in 'generated_source' as modifiable characters array.
2014-10-14 17:23:11 +04:00
Ruben Ayrapetyan
05103b1ecc
Reducing waitTime in loop_demo.js
2014-10-14 17:23:11 +04:00
Ruben Ayrapetyan
7d27375860
Representing script as modifiable characters array for MCU.
2014-10-14 17:23:11 +04:00
Ruben Ayrapetyan
78367993db
Replacing -O3 optimization option with -Os.
2014-10-14 15:13:16 +04:00
Ruben Ayrapetyan
d49dfd3956
Implementing __aeabi_llsl (ARM Runtime ABI: long long left shift).
2014-10-14 15:13:16 +04:00
Ruben Ayrapetyan
c4ba033970
Renaming ERR_MEMORY -> ERR_OUT_OF_MEMORY.
2014-10-14 14:08:38 +04:00
Ruben Ayrapetyan
38b47eaba7
Reducing number of iterations in nested_function.js: 1000 -> 100.
2014-10-13 19:34:16 +04:00
Ruben Ayrapetyan
d2ceca87d2
Enabling jerry/sunspider/controlflow-recursive and jerry/sunspider/math-spectral-norm benchmarks.
2014-10-13 19:09:09 +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
9f6ebb310b
Removing test suite for Compact Profile.
2014-10-13 16:27:16 +04:00
Ruben Ayrapetyan
211ea32dbf
Fixing jrt_set_mem_limits.
2014-10-13 15:53:04 +04:00
Ruben Ayrapetyan
ee0d800b82
Copying and reducing test suite for Compact profile.
2014-10-13 14:59:33 +04:00
Ruben Ayrapetyan
db6b12f958
Fixing two tests in Jerry test suite.
2014-10-13 14:58:46 +04:00
Ruben Ayrapetyan
7819adcf99
Implementing ToObject routine for case argument is string literal.
2014-10-13 13:29:29 +04:00
Ruben Ayrapetyan
fc69e52ca3
Fixing memory leak in ecma_op_string_object_get_own_property.
2014-10-13 13:29:29 +04:00
Ruben Ayrapetyan
76bebfc532
Fixing GetValue / PutValue routines for primitive base values (access after ToObject).
2014-10-13 13:29:29 +04:00
Ruben Ayrapetyan
47d384c565
Partial implementation of the Array.prototype built-in object.
2014-09-26 20:07:45 +04:00
Ruben Ayrapetyan
0e22967653
Fixing Arguments object construction routine.
2014-09-26 19:36:14 +04:00
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
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
Ruben Ayrapetyan
f380b30e75
Fixing 'print' native call.
2014-09-25 16:08:48 +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
Ruben Ayrapetyan
85a3a9a690
Implementing Math.exp built-in.
2014-09-24 16:01:57 +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
Ruben Ayrapetyan
9b69ea4d6d
Implementing Math.sqrt.
2014-09-23 21:56:44 +04:00
Ruben Ayrapetyan
34a5e00b7f
Implementing Math.random.
2014-09-23 20:25:59 +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
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
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
Ruben Ayrapetyan
d7314a7300
Adding stubs for the Object object.
2014-09-22 15:56:50 +04:00
Ruben Ayrapetyan
a3ca61fe0e
Setting Function's [[Get]] method to default [[Get]] method as they're behaviours for Function objects are equivalent.
2014-09-22 15:49:49 +04:00
Ruben Ayrapetyan
94f7f710a6
Fixing attributes of several properties of the Global object.
2014-09-22 15:35:35 +04:00
Ruben Ayrapetyan
e55ceb22f5
Implementing [[HasInstance]] for non-bound functions.
2014-09-19 21:14:14 +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
d9e0f2936d
Adding jerry_unreachable and jerry_unimplemented routines that print file name and line for corresponding unreachable, unimplemented marks.
2014-09-18 17:08:32 +04:00
Ruben Ayrapetyan
55d9b12176
Introducing built-in routines dispatcher and stubs for the Global object's routines.
2014-09-18 16:25:33 +04:00
Ruben Ayrapetyan
30008f8dc5
Splitting ERR_GENERAL error code in ERR_FAILED_INTERNAL_ASSERTION and ERR_UNIMPLEMENTED_CASE; introducing ERR_FAILED_ASSERTION_IN_SCRIPT error code for handling non-zero script's exit values.
2014-09-18 14:02:34 +04:00
Ruben Ayrapetyan
f402e42d2f
Moving Global object related routines to libecmabuiltins component. Introducing ecma_init_builtins and ecma_finalize_builtins routines.
2014-09-18 13:55:56 +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
51b7dc0d69
Turning off performance measurement during pre-commit testing.
2014-09-17 18:04:53 +04:00
Ruben Ayrapetyan
24fc505440
Introducing ecma_is_magic_string routine.
2014-09-17 18:00:11 +04:00
Ruben Ayrapetyan
70d76efc98
Adding cppcheck utility to repository.
2014-09-17 15:50:55 +04:00
Ruben Ayrapetyan
b5a579cc41
Pulling before pre-push testing instead of just before pushing in ./tools/push.sh.
2014-09-17 15:38:06 +04:00
Ruben Ayrapetyan
aa6a45962d
Reducing scope of variable in deserialize_num_by_id to satisfy cppcheck's requirements.
2014-09-17 15:37:39 +04:00
Ruben Ayrapetyan
59ef3bf074
Little refactoring of control paths in general objects' [[DefineOwnProperty]] to satisfy cppcheck's requirements.
2014-09-17 15:37:12 +04:00
Ruben Ayrapetyan
5df12d2e04
Fixing NULL pointer dereference in PutValue routine.
2014-09-17 15:24:48 +04:00
Ruben Ayrapetyan
318a62e9b3
Adding debug.linux-valgrind.check and release.linux-musl-valgrind.check to precommit testing.
2014-09-17 12:56:48 +04:00
Ruben Ayrapetyan
6f23dd879d
Increasing test timeout for valgrind runs.
2014-09-17 12:56: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