Commit Graph
100 Commits
Author SHA1 Message Date
Ruben Ayrapetyan 55ffb0cdd1 Fix pass of USE_COMPILER_DEFAULT_LIBC from make (Makefile) to cmake (CMakeLists.txt).
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-08-05 14:49:36 +03:00
Ruben Ayrapetyan f39a294bc6 Remove dependency on prerequisites for linux build.
Precommit still depends on prerequisites, as it depends on vera++, etc.

Related issue: #516

JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-08-04 13:59:24 +03:00
Ruben Ayrapetyan c41f76aba2 Support up to 65535 items in object / array literals.
Related issue: #276

JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-08-03 15:54:53 +03:00
Ruben Ayrapetyan f7781bb7bc Remove intrinsics (native_call opcode).
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-31 17:59:03 +03:00
Ruben Ayrapetyan 72d4c07bdc Remove 'print' instrinsic, add 'print' implementation-defined built-in routine to the Global object.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-31 17:57:59 +03:00
Ruben Ayrapetyan c715a7cd1d Change 'assert' handle to pass only upon exactly 1 argument is received, and the argument is boolean true; update internal test suite correspondingly.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-30 17:05:26 +03:00
Ruben Ayrapetyan 502f4c4623 Split opcode and instruction entities and perform related renamings: opcode_t is now vm_instr_t, opcode position is instruction position, etc.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-28 13:43:43 +03:00
Ruben Ayrapetyan 1990762cf0 Add opcode description table containing an opcode's name, name and possible type of the opcode's arguments.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-28 13:43:43 +03:00
Ruben Ayrapetyan d11dfc5703 Fix syntax check of literal duplication in FormalParameterList (strict mode).
Related issue: #381

JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-22 15:22:40 +03:00
Ruben Ayrapetyan 6ade8dfebb Fix preparse_scope - consider nesting level during search for identifier tokens.
Related issue: #440

JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-22 14:50:57 +03:00
Ruben Ayrapetyan 31894da098 Move ecma-stack to vm component, renaming it to vm-stack.
ECMA-stack is related to VM and is not related to ECMA component, except for GC.
Dependency between vm-stack and GC would be solved after GC would be extracted to a separate compoment.

JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-22 14:36:23 +03:00
Ruben Ayrapetyan 7dcaf06793 Rename int_data_t -> vm_frame_ctx_t, vm_frame_ctx_t* variables from int_data / int_data_p -> frame_ctx_p.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-22 14:36:23 +03:00
Ruben Ayrapetyan 7b3042fdc9 Remove usage of isalpha, isdigit, isxdigit, isspace in the whole engine except implementation of JSON built-in, moving the functions to JSON built-in's module.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-20 15:47:19 +03:00
Ruben Ayrapetyan 68b9fb54d5 Turn off Date and RegExp built-in objects in compact profile.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-16 20:24:10 +03:00
Ruben Ayrapetyan abc2b55297 Fix dump of arguments / eval usage hint in preparse_scope.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-15 17:24:54 +03:00
Ruben Ayrapetyan 7bc2c69147 Temporary workaround (until parser is refactored) for fixing parse of expressions like '1 = 1'.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-15 17:00:45 +03:00
Ruben Ayrapetyan 44b7b95781 Add support of ReferenceError early error to parser.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-15 17:00:45 +03:00
Ruben Ayrapetyan 7ccec19c26 Fix strict mode in an object initializer's getters / setters definition.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-15 13:32:02 +03:00
Ruben Ayrapetyan 0e8cb596d7 Fix parse of preincrement / predecrement, applied to 'obj.prop'-like expressions.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-15 13:04:02 +03:00
Ruben Ayrapetyan 6fe78cc994 Temporary workaround (until parser is refactored) for fixing evaluation of simple 'identifier'-like expressions.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-15 12:52:42 +03:00
Ruben Ayrapetyan 5e329c815c Fix syntax checking of large object literals.
Related issue: #354

JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-15 12:41:56 +03:00
Ruben Ayrapetyan 73d082aa55 Fix parse of delete operator.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-15 12:34:51 +03:00
Ruben Ayrapetyan c120433158 Fix handling of EOF in insert_semicolon.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-15 12:31:47 +03:00
Ruben Ayrapetyan 92bf7859af Put lexer_init after setjmp in parser_parse_program, as lexer_init could raise an early error.
Related issues: #341

JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-14 18:42:49 +03:00
Ruben Ayrapetyan aa415c670e Fix initialization of 'this' argument in 'call_n' opcode handler.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-13 19:31:07 +03:00
Ruben Ayrapetyan c84d31ce9e Fix sign of number remainder (ecma_op_number_remainder).
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-13 19:21:46 +03:00
Ruben Ayrapetyan f8770020f7 Update RegExp.prototype.exec so that it returns 'null' instead of 'undefined' in case argument doesn't match corresponding regular expression.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-13 19:05:37 +03:00
Ruben Ayrapetyan 8aa2571699 Fix NaN handling in ecma_op_same_value.
Related issue: #130

JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-13 18:57:38 +03:00
Ruben Ayrapetyan 710a18d6af Add 'length' property of String.prototype built-in object.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-13 18:49:45 +03:00
Ruben Ayrapetyan 7dd1d01541 Replace character constants with corresponding LIT_CHAR_* definitions in lexer_parse_token (renamed from lexer_next_token_private); replace remaining character constants in lexer with corresponding LIT_CHAR_* definitions.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-08 15:53:23 +03:00
Ruben Ayrapetyan e45f6dc61b Replace punctuator character constants with corresponding LIT_CHAR_* definitions in lexer_next_token_private.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-08 15:53:12 +03:00
Ruben Ayrapetyan 23b847015c Support unicode whitespace and line terminators in lexer, fix parse of comments.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-08 15:53:02 +03:00
Ruben Ayrapetyan 32094622ec Replace character constants with corresponding LIT_CHAR_* definitions in lexer_parse_regexp (renamed from parse_regexp).
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-08 15:52:52 +03:00
Ruben Ayrapetyan 7664bc161b Replace character constants with corresponding LIT_CHAR_* defines in lexer_parse_string (renamed from parse_string).
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-08 15:52:42 +03:00
Ruben Ayrapetyan 1711416e2e Simplify lexer_parse_number (parse_number) and add unicode support to the function.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-08 15:52:31 +03:00
Ruben Ayrapetyan baf3748d1b Support unicode in lexer_parse_identifier_name_or_keyword (renamed from parse_name).
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-08 15:52:21 +03:00
Ruben Ayrapetyan 6432e4d7cf Replace convert_string_to_token_transform_escape_seq with lexer_transform_escape_sequences that outputs transformed charset to specified buffer, instead of creating token from the charset.
Also the commit introduces lexer_convert_escape_sequence_digits_to_char, adds 'lexer' prefix to convert_single_escape_character and replaces character constants with corresponding LIT_CHAR_* definitions in the function.

JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-08 15:52:10 +03:00
Ruben Ayrapetyan b5d30de4d7 Rename decode_keyword to lexer_parse_reserved_word and change it so that it doesn't return TOK_NAME, but empty token instead.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-08 15:51:59 +03:00
Ruben Ayrapetyan c21399cd58 Fix ecma_date_parse_date_chars: lit_char_is_unicode_digit -> lit_char_is_decimal_digit.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-08 15:20:45 +03:00
Ruben Ayrapetyan afe58e90ae Add lit_char_is_octal_digit, lit_char_is_decimal_digit, lit_char_is_hex_digit helpers.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-08 15:17:41 +03:00
Ruben Ayrapetyan 393d693e23 Introduce 'USE_COMPILER_DEFAULT_LIBC' for switching from jerry-libc to a libc, provided by compiler.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-08 15:02:40 +03:00
Ruben Ayrapetyan e8659f373c Rename ECMA_CHAR_NULL to LIT_CHAR_NULL, move it to jerry-core/lit/lit-char-helpers.h.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-02 17:38:34 +03:00
Ruben Ayrapetyan 2a78d24fce Add preprocessor definitions for various character codes, referenced in ECMA-262, and helpers for checking if a character falls into a ECMA-defined character category; remove lit_char_is_carriage_return and lit_char_is_new_line helpers.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-02 17:38:32 +03:00
Ruben Ayrapetyan 7d53133fcb Add unicode characters ranges, listed per category.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-02 17:37:21 +03:00
Ruben Ayrapetyan c37964f7a9 Move helpers from ecma-helpers-char.cpp to lit-char-helpers.cpp, rename them correspondingly.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-02 17:36:48 +03:00
Ruben Ayrapetyan 0c7801b996 Fix setup of argument variables in case parameter names are duplicated.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-01 15:07:00 +03:00
Ruben Ayrapetyan 134491453b Fix ecma_op_get_value_object_base (GetValue, 8.7.1) for case HasPrimitiveBase (ref) is true.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-01 14:57:06 +03:00
Ruben Ayrapetyan b45302ee07 Fix propagation of strict mode.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-01 14:44:12 +03:00
Ruben Ayrapetyan 438d2c2930 Fix ecma-property construction: perform operations that could invoke GC before linking property into an object's property list to avoid start of GC in the middle of property construction.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-07-01 14:23:48 +03:00
Ruben Ayrapetyan 71bac03d51 Fix construction of Arguments object: add handler for 'caller' property that throws TypeError upon read or write access.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-30 19:18:53 +03:00
Ruben Ayrapetyan ec02ace0e9 Fix syntax check for duplicate parameter names in a strict mode function.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-30 15:22:21 +03:00
Ruben Ayrapetyan 4870550c8a Fix false-positive unexpected EOF in preparse_scope.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-30 14:52:20 +03:00
Ruben Ayrapetyan 0422e2230d Fix syntax check for case 'eval' or 'arguments' identifiers are used for name of function in strict mode.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-30 14:36:18 +03:00
Ruben Ayrapetyan 7b90d54490 Fix raise of several nested jumpable borders at one label.
Related issue: #164

JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-30 14:25:51 +03:00
Ruben Ayrapetyan 2aa04859ef Fix handling of an exception raised during arguments list evaluation.
Related issues: #260, #261, #262, #263, #264, #265, #266, #267

JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-30 10:11:01 +03:00
Ruben Ayrapetyan a56693e00c Fix syntax error check for assignment of 'eval' and 'arguments' in strict mode code.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-29 18:11:24 +03:00
Ruben Ayrapetyan 984e269db6 Fix direct call to eval from strict mode code.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-29 18:04:42 +03:00
Ruben Ayrapetyan 6573ffd632 Fix several issues in parse of variable declarations.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-29 17:56:42 +03:00
Ruben Ayrapetyan 9e3f123cd5 Fix character code values for "<LF>" and "<CR>" characters in ecma-char helpers.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-29 17:49:57 +03:00
Ruben Ayrapetyan 3d31bfec92 Fix parse of nested switch statements.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-29 17:42:37 +03:00
Ruben Ayrapetyan 6e2733dbfd Reduce register pressure by reusing registers, allocated for argument preparation instruction sequence.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-29 17:23:51 +03:00
Ruben Ayrapetyan dc095bb902 Enhancement of argument list parsing loop: removing break / continue operators, so that every iteration passes start and end of loop body.
The change makes possible simple notification of byte-code generator about start / end of byte-code generation for an argument.
As register values are not passed between byte-code sequences that prepare different arguments, the change would make possible for byte-code generator to reuse registers allocated for the code sequences.

JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-29 17:23:51 +03:00
Ruben Ayrapetyan 1dc7ed64d6 Fix get_variable_value invocation in opfunc_call_n; enhancement of exception handling in opfunc_obj_decl.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-29 17:23:51 +03:00
Ruben Ayrapetyan 06dffdec8f Remove exit completion value type.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-29 10:24:18 +03:00
Ruben Ayrapetyan 447358cd4a Remove intrinsics support from parser.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-29 10:24:18 +03:00
Ruben Ayrapetyan 507411f0a0 Implement parse of for-in statement.
JerryScript-DCO-1.0-Signed-off-by: Evgeny Gavrin [email protected]
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-26 20:21:59 +03:00
Ruben Ayrapetyan b988fe2fce Introduce for-in opcode; implement handler for the opcode.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-26 20:10:31 +03:00
Ruben Ayrapetyan 6c6e740c7a Fix check of run scope bounds in vm_loop.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-26 20:10:31 +03:00
Ruben Ayrapetyan 9b414deb8d Introduce explicit description of registers (temporary variables) ranges.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-26 20:10:31 +03:00
Ruben Ayrapetyan f849cc6283 Fix parse of simple for statement.
Related issue: #156

JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-25 20:29:36 +03:00
Ruben Ayrapetyan 601f1eea58 Introduce jsp_skip_braces function for skiping blocks, surrounded with braces.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-25 20:29:36 +03:00
Ruben Ayrapetyan 5f174cf8bf Remove 'process_keyword_names' stage, as keyword literals now can be registered during main parse stage.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-25 20:29:36 +03:00
Ruben Ayrapetyan d7ecd4a467 Fix raise of syntax errors for unmatched braces.
Related issue: #43, #183

JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-25 16:47:45 +03:00
Ruben Ayrapetyan 4ff9e79b02 Generate anonymous function expressions for getters / setters of an object literal.
Related issue: #234

JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-24 15:37:42 +03:00
Ruben Ayrapetyan 913519dd5c Fix of ToUInt32 (ecma_number_to_uint32) and ToInt32 (ecma_number_to_int32) conversion routines.
Related issue: #160

JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-23 15:33:03 +03:00
Ruben Ayrapetyan 1efaefaabe Extract part of ecma_op_number_remainder (ECMA-262 v5, 11.5.3), corresponding to item 6 (actual remainder calculation, without handling of NaN. Infinity and zero values), as ecma_number_calc_remainder.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-23 15:33:03 +03:00
Ruben Ayrapetyan ab2abfa8b3 Fix receiving of byte-code instructions from serializer.
Related issue: #203

JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-23 13:49:46 +03:00
Ruben Ayrapetyan d1055f98e5 Add set_variable_value to opfunc_native_call.
Related issue: #117

JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-23 13:16:42 +03:00
Ruben Ayrapetyan 611811678e Remove invalid assertion in ecma_builtin_global_object_eval.
The removed assertion checked that `this` argument can't be equal to `undefined` in direct call to eval.
Actually, `this` can be not equal to `undefined` in case direct call to eval is performed from `with` block.

Related issue: #212

JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-23 13:09:55 +03:00
Ruben Ayrapetyan a536073da4 Add literal registration in parse_member_expression (TOK_KEYWORD case).
Related issue: #116

JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-23 12:39:45 +03:00
Ruben Ayrapetyan 89a7449913 Fix invalid assertion condition in jump opcode handlers.
Related issue: #120

JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-23 12:31:45 +03:00
Ruben Ayrapetyan 0db82a56d2 Fix exception handling in opfunc_native_call (OPCODE_NATIVE_CALL_PRINT case).
Related issue: #122

JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-23 12:09:18 +03:00
Ruben Ayrapetyan 81d13b0676 Fix incorrect interchange of interfaces taking to ecma values and ecma completion values.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-23 11:38:13 +03:00
Ruben Ayrapetyan 7d4569a6ff Fix valgrind false-positive warning in mem_heap_get_chunked_block_start.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-19 18:00:37 +03:00
Ruben Ayrapetyan a4e54e736e Support syntax error feedback in parser.
Now, parser correctly finishes parse procedure if syntax of source code is incorrect (syntax correctness is indicated using return value):
 - parser-internal memory management is performed using jsp_mm_alloc / jsp_mm_free;
 - upon detection of incorrect syntax, all parser-allocated memory regions are deallocated using jsp_mm_free_all and parse finishes with corresponding return value.

JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-19 17:05:15 +03:00
Ruben Ayrapetyan 85f12de139 Introduce parser-specific managed memory allocator with interface jsp_mm_free_all that, upon call, frees all memory allocated with the allocator.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-19 16:25:34 +03:00
Ruben Ayrapetyan 9b0f5d439d Introduce jsp_label_remove_all_labels interface that removes all jump labels registered at the moment of call for usage upon raise of SyntaxError during parse.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-19 16:25:34 +03:00
Ruben Ayrapetyan bd9d1d4afd Improve allocation of memory for byte-code array and literal identifiers hash table.
- literal identifiers hash table and byte-code array are now allocated in one heap block instead of four blocks;
 - memory regions with the hash tables and arrays are now linked into linked list using headers at start of the regions instead of using array_list.

JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-19 16:25:34 +03:00
Ruben Ayrapetyan 4e563932f1 Remove parser_init / parser_free interfaces (corresponding actions are now performed in parser_parse_program); introduce boolean return value in parser invocation interfaces that would indicate whether SyntaxError was raised during parse.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-19 16:25:34 +03:00
Ruben Ayrapetyan 2bf25f10eb Move jerry-core/parser/collections to jerry-core/parser/js/collections.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-19 16:25:34 +03:00
Ruben Ayrapetyan 53156771dc Update API for invocation of functions and constructors.
With the change, if exception is thrown in `jerry_api_function_call` and `jerry_api_construct_object`, the exception object is returned to the caller.

JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-17 19:14:34 +03:00
Ruben Ayrapetyan de7b72d726 Add configuration for ARMv7 softfloat build; update setjmp / longjmp ARMv7 implementation to handle the softfloat-mode properly.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-17 17:03:42 +03:00
Ruben Ayrapetyan b008867d81 Implement setjmp / longjmp in jerry-libc.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-17 17:03:42 +03:00
Ruben Ayrapetyan f115f731c3 Switch unit tests to jerry-libc.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-17 17:03:42 +03:00
Ruben Ayrapetyan 6d6c913bdc Move random number generator from Math.random to jerry-libc, replace the logic with call to rand in Math.random.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-17 17:02:50 +03:00
Ruben Ayrapetyan 30277153b9 Fix strncmp, fread and fwrite in jerry-libc.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-17 17:02:50 +03:00
Ruben Ayrapetyan 630a1e8eba Move architecture-depedendent libc internal headers to jerry-libc/arch folder.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-17 17:02:49 +03:00
Ruben Ayrapetyan 8a9633dba0 Fix style in jerry-core/jerry.cpp, and doxygen titles in jerry-core/jerry.cpp and jerry-core/jerry-extension.h.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-15 16:13:56 +03:00
Ruben Ayrapetyan 5d5e75fad6 Implementing 'eval' routine of built-in Global object.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-13 18:17:23 +03:00
Ruben Ayrapetyan b310d76dec Introducing interpreter context flag, indicating if there is call of 'Direct call to eval' form in process, and interfaces for accessing the flag and 'strict mode' flag.
JerryScript-DCO-1.0-Signed-off-by: Ruben Ayrapetyan [email protected]
2015-06-13 18:17:23 +03:00