Commit Graph
100 Commits
Author SHA1 Message Date
Zoltan Herczeg d5a635a54a Fix use after free during creation of Promise reactions. (#2532)
The ecma_enqueue_promise_reaction_job() function allocates memory,
which might trigger a GC run. During this GC the objects in the
reactions collection are not marked.

Fixes #2486.
Fixes #2506.
Fixes #2541.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-10-05 08:08:41 +02:00
Zoltan Herczeg a8399f4416 Rework op_construct. (#2547)
The new form should be more suitable for classes.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-10-03 11:52:01 +02:00
Zoltan Herczeg 35fbcd1ffd Increase the debugger version field size from 1 byte to 4 byte (#2513)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-09-20 09:33:56 +02:00
Zoltan Herczeg 3031a11f86 Fix LCache invalidation issue for native properties during GC. (#2530)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-09-17 17:31:50 +02:00
Zoltan Herczeg 0a40f55e5f Introducing internal properties. (#2485)
Native handle and pointer are moved to internal properties.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-09-04 15:43:35 +02:00
Zoltan Herczeg d3d42f7685 Implement the core of the map object. (#2447)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-09-04 13:30:00 +02:00
Zoltan Herczeg 2ad883ea48 Fix logging issues in the debugger. (#2483)
- Properly handle logging during transport close
 - Properly display data during parse

Furthermore hide global functions of the debugger.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-09-03 11:14:57 +02:00
Zoltan Herczeg 7d41d38e3c Remove deprecated native handle support. (#2496)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-08-29 12:51:37 +02:00
Zoltan Herczeg 25f1718d84 Move some internal functions into JerryDebugger. (#2484)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-08-28 23:56:57 +02:00
Zoltan Herczeg bd42403600 Implement computed properties for object literals. (#2481)
Also disable ES5.1 property name dumplication checks
when ES2015 object literals are enabled.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-08-28 15:28:16 +02:00
Zoltan Herczeg 300e40ba9d Improve python debugger client. (#2441)
Replace DisplayData to DebuggerAction. The new class has only four type
options. Furthermore several functions returning with DisplayData is
changed to return with string.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-08-22 17:34:32 +02:00
Zoltan Herczeg 767dd68ce1 Change literal status flags to enum. (#2474)
Also fix a white space typo.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-08-18 08:06:37 +02:00
Zoltan Herczeg 1ac2903d3c Fix a few parser style issues. (#2442)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-08-06 18:08:53 +02:00
Zoltan Herczeg 76ff084dc7 Move low-level debugger connection handling into jerry-ext. (#2426)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-07-19 10:14:43 +09:00
Zoltan Herczeg 88589902e2 Remove jerry_get_arg_value function. (#2425)
Remove automatic conversion of errors. Errors are
primary values, just like numbers or strings.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-07-19 10:13:40 +09:00
Zoltan Herczeg 9513f3792d Reduce with stack consumption by 1. (#2430)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-07-18 15:52:00 +02:00
Zoltan Herczeg f86d7459d1 Fixes for ES2015 classes. (#2424)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-07-13 14:59:53 +02:00
Zoltan Herczeg 857ba99694 Rework JerryScript transport layer. (#2421)
Introducing jerryscript-debugger-transport.h interface, which allows
chaining multiple protocols (e.g. tcp and websocket).

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-07-13 01:21:08 +09:00
Zoltan Herczeg 04dcefe087 Rework function call. (#2414)
Furthermore add a construct flag, which disallows calling certain
functions without new. Constructing bound arrow functions correctly
throws error now.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-07-11 09:35:44 +09:00
Zoltan Herczeg 34c081095a Fix escape sequence parsing in lexer_compare_identifier_to_current. (#2409)
Furthermore do not allow escape sequences in object initializer
get/set functions.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-06-23 10:02:14 +09:00
Zoltan Herczeg 35ac0e0445 Fix parse_print_final_cbc dump when arguments is used (#2400)
Currently the byte code start is incorrectly set when
a non-strict arguments object is present, and a random
memory area is dumped as byte code.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-06-21 08:38:17 +09:00
Zoltan Herczeg 03274c112a Remove ECMA_LEXICAL_ENVIRONMENT_OBJECT_BOUND. (#2408)
Only the global object bound to the root node of the lexical environment
tree does not have a provideThis flag, and ecma_op_implicit_this_value()
falls back to the global object. Hence we get the same effect regardless
of provideThis.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-06-20 15:27:45 +02:00
Zoltan Herczeg acdbbf2261 Add literal property to the byte code list. (#2397)
Initializing a property with a constant is frequent in object initializers.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-06-20 09:06:59 +02:00
Zoltan Herczeg 86ecc81130 Fix literal free when show opcodes is enabled. (#2398)
A literal might be not freed if it is stored in a register,
and PARSER_DUMP_BYTE_CODE is enabled, but opcodes are not shown.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-06-18 09:31:13 +02:00
Zoltan Herczeg 1044523af7 Add operational mode for jerry_gc API call. (#2385)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-06-15 16:31:48 +09:00
Zoltan Herczeg 9625fb842e Improve instanceof operator. (#2395)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-06-13 19:33:27 +09:00
Zoltan Herczeg bd0ea4f474 Fix wrong code order in opfunc_in (#2390)
Also no conversion if the left value is a string.

Fixes #2386.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-06-11 10:20:57 +09:00
Zoltan Herczeg 7be9f91d22 Reverse the generation of line info. (#2363)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-05-30 19:57:12 +09:00
Zoltan Herczeg acb3e71436 Add JERRY_VLA calls to the snapshot tool. (#2357)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-05-25 10:34:55 +09:00
Zoltan Herczeg 5560c76b41 Convert certain push number opcodes to literals (#2328)
Binary operations are much faster with literal arguments.
The byte immediates are still kept for other cases, e.g. array declarations.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-05-18 17:22:53 +09:00
Zoltan Herczeg 5e097dc354 Add line info support. (#2286)
Add line info data to byte, which allows getting a backtrace info directly
from the engine. Snapshots are not supported.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-04-19 09:12:54 +09:00
Zoltan Herczeg 095b730f9d Improve stopping at errors. (#2278)
In some cases the debugger catches (reports) the same
exception multiple times. This is confusing since these
not new errors. This patch fixes this behaviour.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-04-18 19:31:17 +09:00
Zoltan Herczeg 96b528a486 Rework jerry_parse function. (#2282)
Remove jerry_parse_named_resource, merge its arguments to jerry_parse
and change is_strict argument to an option list for possible future extensions.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-04-17 09:51:52 +02:00
Zoltan Herczeg e91471727f Support abort in the debugger. (#2273)
Aborts are not caught by catch/finally blocks,
so it is possible to stop a script using the debugger.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-04-11 13:59:13 +02:00
Zoltan Herczeg 5c0c21b26a Rework snapshot execution api. (#2270)
The _at functions replaces the original functions.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-04-11 10:39:58 +09:00
Zoltan Herczeg 7b226f53e0 Rework snapshot generation API. (#2259)
Also remove eval context support. It provides no practical advantage.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-04-05 13:43:55 +02:00
Zoltan Herczeg 27939f0884 Simplify debugger-ws.h (#2266)
Remove several macros and types from it. This change simplifies
the external debugger interface.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-04-05 11:22:44 +02:00
Zoltan Herczeg bb84466fcf Support static snapshots. (#2239)
Unlike normal snapshots, no part of a static snapshot is loaded into
the RAM when executed from ROM. Static snapshots rely heavily on
external magic strings.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-03-20 07:46:52 +09:00
Zoltan Herczeg 7b0e1672ae Improve property search. (#2232)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-03-05 14:54:33 +01:00
Zoltan Herczeg b9f96a64d9 Support large string constants in 32 bit cpointer mode. (#2233)
After this patch, all sunspider tests run when cpointer 32 is enabled.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-03-05 11:41:52 +01:00
Zoltan Herczeg d60d4dbba9 Improve magic string handling. (#2221)
Remove unnecessary ref / deref calls when magic strings are used.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-03-01 13:31:15 +01:00
Zoltan Herczeg 51e3c4455a Implement direct strings. (#2196)
Direct strings are a new type of direct ecma-values (no memory allocation
is needed for encoding them) in JerryScript. Currently magic strings,
external magic strings and uint values are encoded as direct strings.

The constant pool of JerryScript byte-code is changed to hold ecma-values
rather than cpointers to support direct strings.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-02-23 08:21:46 +09:00
Zoltan Herczeg d841270747 Exclude hashmaps from GC marks. (#2212)
Fixes #2146.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-02-22 09:13:49 +09:00
Zoltan Herczeg 67cee1f478 Remove arguments of ecma_new_values_collection. (#2197)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-02-07 13:05:04 +09:00
Zoltan Herczeg 36051ec92b Limit maximum number of arguments for apply(). (#2183)
The length*sizeof(ecma_value_t) may overflow on 32 bit systems which
cause a memory corruption when the values are filled.

Fixes #2182.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-02-01 15:09:53 +01:00
Zoltan Herczeg 06ebfc52ed Simplify ECMA_OP_TO_NUMBER_TRY_CATCH macro. (#2185)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-02-01 19:31:17 +09:00
Zoltan Herczeg c935e4b7e2 Return early if number conversion is failed in arraybuffer slice. (#2184)
Fixes #2181.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-02-01 19:30:03 +09:00
Zoltan Herczeg 918eb22a01 Add support for aborts. (#2176)
Aborts are similar to exceptions except they are not caught by catch
and finally blocks. Callbacks should honor aborts as well and return
them without processing them. Aborts are never thrown by JavaScript
code.

In the future certain events such as out-of-memory condition may
also throw aborts.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-01-30 09:13:44 +09:00
Zoltan Herczeg b548eae4ad Improve get characters of a string function.
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-01-29 10:35:56 +09:00
Zoltan Herczeg 1c64c1aeb7 Fix inserting pending breakpoints. (#2163)
Before this patch the JS execution is started right after the parsing
is completed. The problem is that some parts of the JS code is executed
before the debugger had any chance to insert pending breakpoints due
to network latency. This patch adds a delay after parsing when at least
one pendding breakpoint is available.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-01-23 10:47:47 +01:00
Zoltan Herczeg b9560b7c70 Rework ecma collection. (#2153)
Greatly simplify the iterator part and make it compatible with 32 bit cpointers.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2018-01-10 15:55:56 +01:00
Zoltan Herczeg a2d3ea61eb Optimize string concatenation. (#2141)
This patch adds two new string concatenation functions:
ecma_append_chars_to_string and ecma_append_magic_string_to_string

The former appends a cesu8 byte array and the latter appends a magic string
to the end of an ecma-string. These two free (dereference) their ecma-string
argument, and this change is also applied to the original ecma_concat_ecma_strings
function which simplifies string handling in most cases.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-12-19 13:45:48 +01:00
Zoltan Herczeg e964393abe Add fast path to ecma_op_object_get with magic string. (#2078)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-12-05 17:17:56 +01:00
Zoltan Herczeg 53cd324179 Rework error to use a global slot to store the error value.
This change frees up the error bit in ecma_value_t, which allows
to define 4 more value types (e.g. symbols). To keep API
compatibility we introduce a box for values with error flag.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-10-24 17:33:04 +09:00
Zoltan Herczeg fe26674752 Support multiple primary functions in a single snapshot. (#1797)
This patch adds an extension to snapshots which allows storing
multiple position independent primary functions in a single
snapshot data. A new application called jerry-snapshot is
added to the project to manage snapshots. Currently the only
option is merging snapshots.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-10-12 14:43:32 +02:00
Zoltan Herczeg 9f0cf9ef1c Implement this binding for arrow functions.
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-10-06 09:07:13 +09:00
Zoltan Herczeg 29ea702fa4 Free the GC mark bit to increase the number of object types. (#2032)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-09-29 16:15:13 +02:00
Zoltan Herczeg 8a5bfd2279 Implement template literals. (#2025)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-09-27 11:24:51 +02:00
Zoltan Herczeg c6a33dd407 Implement arrow function parsing. (#2022)
Note: the special this behaviour of arrow functions is not implemented.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-09-26 10:40:45 +02:00
Zoltan Herczeg 8d916a44f1 Parse functions directly (#2015)
This patch adds direct function source code parsing, which
is useful to avoid source code duplications. The patch
also improves the Function constructor.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-09-21 11:03:23 +02:00
Zoltan Herczeg 7713d30702 Rework jerry_debugger_wait_for_client_source to use a callback.
The jerry_debugger_wait_and_run_client_source function is renamed to
jerry_debugger_wait_for_client_source and a callback is added which
is called when the source is received. Inside the callback the
application is free to do anything with the received source code.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-09-21 17:49:49 +09:00
Zoltan Herczeg 04bccea6a6 Last line of the source code should be printed by the python debugger client.
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-09-13 09:38:35 +09:00
Zoltan Herczeg 522c7d3f87 Correctly enumerate function property members.
Functions has several built-in non-enumerable properties, and
they are correctly ignored during enumeration after this patch.

External function prototype is also lazy enumerated.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-09-05 09:11:35 +09:00
Zoltan Herczeg e897858c64 Reduce the memory consumption of function objects. (#1954)
Several properties of strict and bound functions are moved to
lazy property instantiation. The memory consumption of bound
functions are also reduced when only a this is present.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-08-30 14:17:35 +02:00
Zoltan Herczeg e6832f5f27 Rework argument parsing.
Heavily simplify the interface of CLI.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-07-04 08:56:55 +09:00
Zoltan Herczeg a9e7dd7b91 Check breakpoint stop condition in VM. (#1868)
Check breakpoint stop condition even after a message is processed.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-05-31 12:53:25 +02:00
Zoltan Herczeg efdc06996b Improve instance management in JerryScript. (#1849)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-05-31 15:53:53 +09:00
Zoltan Herczeg 29f57ec58f Print exception hint in the debugger client when an exception is thrown. (#1841)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-05-23 16:06:25 +02:00
Zoltan Herczeg e58f2880df Do not allocate memory for zero length strings. (#1844)
Fixes #1821.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-05-22 13:17:08 +02:00
Zoltan Herczeg c6d890ee13 Support functions with number identifiers in the pre-scanner. (#1837)
Fixes #1829.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-05-19 14:49:38 +02:00
Zoltan Herczeg f4fbf0b0b5 Rework memory statistics to provide useful user information. (#1812)
Obsolote statistics is also removed.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-05-16 09:52:12 +09:00
Zoltan Herczeg f5b385ca6c Tracking variables to reduce the memory consumption of scope chain. (#1819)
Currently we keep all local variables in the scope chain as long as
a nested function is alive. These variables consume memory although
several of them are never used. This patch focuses on removing those
unused ones whose can be detected at parsing time.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-05-15 09:00:57 +02:00
Zoltan Herczeg 838e74df0f Remove include jerryscript.h from jrt.h. (#1803)
Fixes #1791.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-05-11 12:42:47 +02:00
Zoltan Herczeg 894aa6d036 Support ECMAScript stopping in JerryScript. (#1753)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-04-28 14:19:23 +02:00
Zoltan Herczeg 239ae4963c Add documentation about the Coding Guidelines (#1459)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-04-13 16:53:07 +09:00
Zoltan Herczeg 01fe5ab190 Small improvements for type property support. (#1724)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-04-12 15:05:29 +02:00
Zoltan Herczeg 13b305f716 Refactoring several array buffer and typed array functions. (#1715)
The ecma_typedarray_create_object_with_typedarray function is fully rewritten.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-04-07 11:20:03 +02:00
Zoltan Herczeg 1aec439869 Mark target_function of bound objects. (#1707)
Fixes #1621.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-04-03 13:05:29 +02:00
Zoltan Herczeg 750e0ca9d5 Fix several style fixes for typed arrays and optimize filter a bit. (#1697)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-03-30 16:06:11 +02:00
Zoltan Herczeg 343bac56b2 Add C-API for the debugger. (#1688)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-03-29 12:46:07 +02:00
Zoltan Herczeg 1b4426fd2a Check whether match result has error flag. (#1653)
Fixes #1641.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-03-14 10:01:22 +01:00
Zoltan Herczeg 679500b327 Improve breakpoint generator of the debugger. (#1652)
Now the debugger generates a breakpoint for each function before
its first executable statement. This allows inspecting the function
arguments. Position (line and column) info is also added which
simplifies finding of anonymus functions. Several tests were
update to check more corner cases.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-03-13 11:36:34 +01:00
Zoltan Herczeg b140158104 Fix various number parsing issues. (#1648)
For example Number(".") and Number("e5") should be NaN not
zero. Parsing Number("e") caused buffer overflow as well.
Infinity parsing is a bit faster now.

Fixes #1636.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-03-09 15:03:46 +01:00
Zoltan Herczeg 319702cdd2 Support internal properties in GC mark. (#1646)
Some internal properties are incorrectly handled as objects and
marked as visited. This memory overwrite caused random crashes
in IoT.js.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-03-07 14:14:05 +01:00
Zoltan Herczeg a20b9dfa19 Introducing debugger modes (run, breakpoint). (#1645)
This makes the code more robust and error prone, since certain
messages cannot be received in certain situations, e.g. an eval
command during garbage collection.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-03-07 11:58:46 +01:00
Zoltan Herczeg b5a91069fd Fix multiple debugger issues. (#1640)
- Wait for free byte code pointers during garbage collection.
- Detect incorrect free requests in the debugger server.
- Ignore byte code blocks loaded from snapshot.
- Use memmove instead of memcpy to avoid receive buffer corruption.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-03-06 11:13:25 +01:00
Zoltan Herczeg ca2b057356 Call property should handle ECMA_SIMPLE_VALUE_REGISTER_REF. (#1631)
Fixes #1624.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-03-03 12:23:18 +01:00
Zoltan Herczeg b8ccdee4db Numbers found in the literal table also has LEXER_LITERAL_OBJECT_ANY type. (#1626)
Fixes #1615.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-02-28 10:41:41 +01:00
Zoltan Herczeg 6efe39c83c Add source code support to the debugger. (#1614)
Besides the breakpoint list the JavaScript source code is
also sent to the debugger. This feature allows debugging
eval() function calls.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-02-28 09:25:26 +01:00
Zoltan Herczeg 3de72af712 NaN must not be passed to date getter functions. (#1620)
Fixes #1547

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-02-27 11:19:29 +01:00
Zoltan Herczeg 62a581fbb8 Fix typo in vm_decode_branch_offset. (#1611)
Fixes #1597.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-02-22 14:38:52 +01:00
Zoltan Herczeg 8245cdef2f Stack data should be freed after the for statement is fully parsed. (#1609)
Fixes #1598.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-02-22 14:38:32 +01:00
Zoltan Herczeg 54544163a9 Completely remove internal property support. (#1603)
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-02-22 10:39:48 +09:00
Zoltan Herczeg 00e3de230f Introduce debugger status flags to control the operation of the debugger. (#1596)
Two issues were fixed as well: inserting breakpoints before non-directive
prologue strings and the receive can process multiple messages.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-02-21 11:57:04 +01:00
Zoltan Herczeg b02ef67cd2 Add eval support for JerryScript debugger (#1588)
The server can accept a string, execute it with eval,
and returns with the result converted to string. In
case of exception it returns with the exception message.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-02-17 14:31:56 +01:00
Zoltan Herczeg 453066fcf1 Regexp exec should not use the empty magic string. (#1582)
This is a workaround for an ASAN issue and a small optimization as well.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-02-14 14:18:46 +01:00
Zoltan Herczeg 66683e5d4b The main-unix utility should free the return value to avoid leaks. (#1578)
Fixes #1545.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-02-14 10:09:51 +01:00
Zoltan Herczeg bfc5bee394 Restore deleted lines. (#1574)
In a previous patch the original null count behaviour of the
property hashmap is just only partially restored. Now it is
restored fully Also another assertion was forgot to be fixed
in another patch, and we do so now.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-02-10 10:53:43 +01:00
Zoltan Herczeg be720b2238 Seperate NULL and unused values. (#1572)
Fixes #1552.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-02-10 08:10:20 +01:00
Zoltan Herczeg cba165f8e6 Fix invalid assertion in js-parser. (#1556) (#1563)
256 registers can be used so less equal must be used instead of less.

Fixes #1556.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg [email protected]
2017-02-06 15:50:43 +01:00