Ruben Ayrapetyan
|
4fe85cdd1a
|
Full implementation of [[DefineOwnProperty]] for array objects.
|
2014-08-13 14:55:40 +04:00 |
|
Ruben Ayrapetyan
|
3ae7a284dc
|
Partially implementing [[DefineOwnProperty]] for Array objects.
|
2014-08-12 21:45:11 +04:00 |
|
Ruben Ayrapetyan
|
eee1daec91
|
Introducing ecma_compare_zt_string_to_zt_string interface that is __strcmp for ecma_char_t* zero-terminated strings.
|
2014-08-12 18:51:49 +04:00 |
|
Ruben Ayrapetyan
|
8bde4ecbf2
|
Implementing ecma_compare_ecma_string_to_ecma_string helper.
|
2014-08-12 16:56:35 +04:00 |
|
Ruben Ayrapetyan
|
aa43e06366
|
Style fixes in liballocator, libecmaobjects, libecmaoperations: putting else on separate line after closing brace of 'if' block.
|
2014-08-12 13:53:34 +04:00 |
|
Ruben Ayrapetyan
|
839ad7e4b4
|
Fixing cppcheck warning about comma in return statement (libecmaobjects/ecma-helpers-value.c).
|
2014-08-11 22:17:35 +04:00 |
|
Ruben Ayrapetyan
|
48cff24f08
|
Styles fixes in libecmaobjects, libecmaoperations: indentation and braces rules.
|
2014-08-11 22:05:59 +04:00 |
|
Ruben Ayrapetyan
|
59940fb648
|
Style fixes in liballocator, libecmaobjects, libecmaoperations: now lines are not longer than 120 characters.
|
2014-08-11 19:51:40 +04:00 |
|
Ruben Ayrapetyan
|
b02eefd4ae
|
Style fixes in liballocator, libecmaobjects, libecmaoperations: space between function name and opening parenthesis, no space after opening parenthesis/before closing parenthesis.
|
2014-08-11 19:28:14 +04:00 |
|
Ruben Ayrapetyan
|
e53be2b441
|
Renaming ecma_get_pointer, ecma_set_pointer, ecma_set_pointer_non_null macroses to uppercase names.
|
2014-08-11 19:13:59 +04:00 |
|
Ruben Ayrapetyan
|
8ce1ef3c8b
|
Removing trailing whitespace in liballocator, libecmaobjects and libecmaoperations.
|
2014-08-11 15:59:19 +04:00 |
|
Ruben Ayrapetyan
|
7b04e9eaeb
|
Compacting pool header to 8 bytes. Replaced typed pool chunks with fixed-size untyped ones. loop_arithmetics_1kk.js benchmark: 2.98517 -> 2.9443.
|
2014-08-08 23:11:06 +04:00 |
|
Ruben Ayrapetyan
|
cd0246bedc
|
Changing size of ecma-array's chunk to fixed 8 bytes.
|
2014-08-08 18:23:02 +04:00 |
|
Ruben Ayrapetyan
|
1ab3eaa389
|
Optimizing ecma_get_pointer/ecma_set_pointer, introducing ecma_set_non_null_pointer. loop_arithmetics_1kk.js benchmark: 3.450 -> 3.025.
|
2014-08-08 15:22:05 +04:00 |
|
Ruben Ayrapetyan
|
7ad6c25bb2
|
Fix invocation of GC for non-zero generations.
|
2014-08-07 21:10:36 +04:00 |
|
Ruben Ayrapetyan
|
5e1c4b533f
|
Fix ecma_copy_ecma_string_chars_to_buffer.
|
2014-08-07 18:36:05 +04:00 |
|
Ruben Ayrapetyan
|
6d7c2120ef
|
Fix ecma_gc_mark routine: checking properties, located immediately in an object descriptor.
|
2014-08-07 18:28:46 +04:00 |
|
Ruben Ayrapetyan
|
e3cd8ee942
|
Generational mark and sweep GC.
|
2014-08-07 14:54:32 +04:00 |
|
Ruben Ayrapetyan
|
f177633622
|
Decreasing array chunk size to 8 bytes.
|
2014-07-31 17:53:43 +04:00 |
|
Ruben Ayrapetyan
|
4d7f14d059
|
Fixing ecma_compare_zt_string_to_ecma_string routine.
|
2014-07-31 17:52:10 +04:00 |
|
Ruben Ayrapetyan
|
9fd708eabe
|
Revert "Fixing ecma_compare_zt_string_to_ecma_string routine."
This reverts commit c6e955aa2b231076b3ec70c55b38084afb4d01d2.
|
2014-07-31 17:51:40 +04:00 |
|
Ruben Ayrapetyan
|
d327bf5682
|
Fixing ecma_compare_zt_string_to_ecma_string routine.
|
2014-07-31 17:49:16 +04:00 |
|
Ruben Ayrapetyan
|
a084273286
|
Minor style fixes.
|
2014-07-31 17:05:51 +04:00 |
|
Ruben Ayrapetyan
|
9610680e3c
|
Fix ecma_create_object_lex_env: increasing binding object's reference counter.
|
2014-07-31 14:56:22 +04:00 |
|
Ruben Ayrapetyan
|
c364461b80
|
Splitting ecma_create_lexical_environment to ecma_create_decl_lex_env and ecma_create_object_lex_env.
|
2014-07-31 14:48:28 +04:00 |
|
Ruben Ayrapetyan
|
e25e4d6cab
|
Introducing constructor for ecma_property_descriptor_t.
|
2014-07-31 14:03:11 +04:00 |
|
Ruben Ayrapetyan
|
e540590ddd
|
Partial implementation of function call routine ([[Call]]).
|
2014-07-30 20:34:04 +04:00 |
|
Ruben Ayrapetyan
|
0dd67e4799
|
Introducing ecma_object_class_t type that describes ecma-defined object classes (value of ECMA_INTERNAL_PROPERTY_CLASS internal property); adding outer lexical environment's reference counter increment in ecma_create_lexical_environment; updating ecma_create_object to support object type field (that is not connected with ecma-defined object class, but is internal implementation defined type of an object).
|
2014-07-30 14:24:01 +04:00 |
|
Ruben Ayrapetyan
|
f8743a1375
|
Switching from 'echa_char_t*' to 'const ecma_char_t*' where appropriate.
|
2014-07-30 14:20:20 +04:00 |
|
Ruben Ayrapetyan
|
299c94ee85
|
Implementation of general objects' [[GetOwnProperty]], [[GetProperty]], [[CanPut]], [[HasProperty]], [[Delete]]; partial implementation of general objects' [[Get]], [[Put]], [[DefineOwnProperty]].
|
2014-07-29 14:32:01 +04:00 |
|
Ruben Ayrapetyan
|
b073701da4
|
Introducing ECMA property descriptor (8.10) type and helpers for it: constructor and destructor.
|
2014-07-28 21:54:42 +04:00 |
|
Ruben Ayrapetyan
|
3ee0e8a8a5
|
Style fixes regarding 'empty' value: introducing ecma_is_empty_completion_value, reducing usage of the 'empty' value, listing possible usage cases of the 'empty' value in the comment to it's definition.
|
2014-07-28 21:21:31 +04:00 |
|
Ruben Ayrapetyan
|
cae07c0832
|
Implementing stubs for ecma objects' common internal properties and methods (ECMA-262 v5, Table 8).
|
2014-07-28 18:16:05 +04:00 |
|
Ruben Ayrapetyan
|
7840a846e8
|
Fix: removing extra semi-colon after FIXME.
|
2014-07-28 15:46:12 +04:00 |
|
Ruben Ayrapetyan
|
7984c7e65f
|
Fixing comment about an object's maximum reference counter. Adding runtime check for the counter's overflow.
|
2014-07-28 15:17:01 +04:00 |
|
Ruben Ayrapetyan
|
ff2609eb88
|
Implementing {pre,post}_{incr,decr} opcodes.
|
2014-07-25 18:07:18 +04:00 |
|
Ruben Ayrapetyan
|
b7a3a13bc9
|
Implementing register variables.
|
2014-07-24 18:13:32 +04:00 |
|
Ruben Ayrapetyan
|
1796b9d903
|
Renaming rest camelCase-named identifiers according to underscore_named_value-naming.
|
2014-07-23 14:07:45 +04:00 |
|
Ruben Ayrapetyan
|
c0df259726
|
Renaming ecma_GC_info_t -> ecma_gc_info_t (missed this renaming in previous commit).
|
2014-07-23 13:00:01 +04:00 |
|
Ruben Ayrapetyan
|
bc0c7824c2
|
Renaming ecma_* identifiers from 'camelCase' to 'underscore_naming'.
|
2014-07-23 12:54:56 +04:00 |
|
Ruben Ayrapetyan
|
b3b4c74cbe
|
Renaming mem_* identifiers from 'camelCase' to 'underscore_naming'.
|
2014-07-23 12:54:45 +04:00 |
|
Ruben Ayrapetyan
|
2d4ed154ee
|
Removing m_ prefix from identifiers (m_ValueType -> ValueType, ...).
|
2014-07-23 11:41:58 +04:00 |
|
Ruben Ayrapetyan
|
8e08d5f6d6
|
Partially implementing ECMA 'Absract equality comparison' (11.9.3).
|
2014-07-22 22:13:51 +04:00 |
|
Ruben Ayrapetyan
|
f0abfbb31b
|
Refinement of exception handling code in 'multiplication' and 'assignment' opcode handlers.
|
2014-07-22 17:23:29 +04:00 |
|
Ruben Ayrapetyan
|
739d19be5b
|
Implementing 'multiplication' opcode handler and unit test for the opcode.
|
2014-07-21 21:59:15 +04:00 |
|
Ruben Ayrapetyan
|
9b2b248728
|
Partially implementing ToNumber operation.
|
2014-07-21 20:36:08 +04:00 |
|
Ruben Ayrapetyan
|
7e87a1fde0
|
Implementing CheckObjectCoercible operation and partial stubs for ToPrimitive and ToObject operations.
|
2014-07-21 19:58:04 +04:00 |
|
Ruben Ayrapetyan
|
84131d9a28
|
Introducing get_number_by_idx interface for retrieving literal number value by it's identifier. Change ecma_Number_t type from double to float.
|
2014-07-21 19:16:08 +04:00 |
|
Ruben Ayrapetyan
|
1175526d52
|
Fixing value copying/value leakage issues.
|
2014-07-21 17:39:39 +04:00 |
|
Ruben Ayrapetyan
|
0ff6d7ae9e
|
Fixing ecma_CopyValue: adding missing breaks in switch.
|
2014-07-21 16:55:39 +04:00 |
|