Commit Graph

678 Commits

Author SHA1 Message Date
Ruben Ayrapetyan 4160262ce8 Implementing EvalError, RangeError, SyntaxError, URIError built-ins and corresponding prototype built-in objects. 2014-10-30 14:28:44 +03:00
Ruben Ayrapetyan 66cb7e316d Implementing ReferenceError and ReferenceError.prototype built-ins. 2014-10-29 21:28:56 +03:00
Ruben Ayrapetyan 6991b26e04 Implementing TypeError and TypeError.prototype built-ins. Fixing Error.prototype.toString implementation. 2014-10-29 21:15:36 +03:00
Ruben Ayrapetyan 4e6f5c7716 Implementing Error and Error.prototype built-in objects. 2014-10-29 18:49:31 +03:00
Ruben Ayrapetyan ed08fe9983 Full names of magic string identifiers in src/libecmaobjects/ecma-magic-strings.inc.h 2014-10-29 17:23:43 +03:00
Ruben Ayrapetyan a74c77a1d5 Arrangement of built-in objects implementation (description of built-ins with *.inc.h headers, reducing code duplication). 2014-10-29 15:46:31 +03:00
Ruben Ayrapetyan 6078a4c854 Describing Boolean.prototype with src/libecmabuiltins/ecma-builtin-boolean-prototype.inc.h header. 2014-10-28 20:38:26 +03:00
Ruben Ayrapetyan f9e809e2e8 Removing ecma_builtin_*_get_routine_parameters_number routines. 2014-10-28 20:12:03 +03:00
Ruben Ayrapetyan 87310e43c6 On-demand built-ins instantiation. 2014-10-28 17:52:07 +03:00
Ruben Ayrapetyan e35ec87209 Making built-ins' property numbers to be stored as static const instead of extern const. 2014-10-28 17:32:31 +03:00
Ruben Ayrapetyan 26012e098f Moving magic strings definitions to ecma-magic-strings.inc.h. 2014-10-28 16:30:42 +03:00
Ruben Ayrapetyan 459750b1d0 Implementing routine for copying ecma-string and using it to duplicate ecma-string upon it's reference counter overflow. 2014-10-28 14:52:40 +03:00
Ilmir Usmanov 4735570b31 Add SyntaxErrors on parsing ObjectDeclarations. 2014-10-28 13:39:25 +04:00
Ruben Ayrapetyan fc751b0f15 Arranging JERRY_UNIMPLEMENTED macro usages and adding comments to each invocation of the macro. 2014-10-27 19:48:03 +03:00
Ruben Ayrapetyan 69624e4de2 Fixing search of shortest representation in ecma_number_to_zt_string.
Fixing right shift operation for big integers.
2014-10-27 15:34:33 +03:00
Ilmir Usmanov 7d13970e95 Fix compiling several input files 2014-10-27 15:27:25 +04:00
Ilmir Usmanov a55517f57a Remove 'logical_or' and 'logical_and' opcodes 2014-10-27 14:55:02 +04:00
Ruben Ayrapetyan f0ab69b01a Replacing 96-bit integer with 128-bit integer in ecma_number_to_zt_string and ecma_zt_string_to_number conversion routines. 2014-10-24 23:06:25 +04:00
Ruben Ayrapetyan b773ef074c Fixing exception handling in ecma_op_to_number. 2014-10-24 21:58:53 +04:00
Ruben Ayrapetyan e11f73df64 Improving precision in ecma_number_to_zt_string. 2014-10-24 20:39:59 +04:00
Ruben Ayrapetyan 82e8895b4c Fixing ToInt32 conversion routine. 2014-10-24 20:39:59 +04:00
Ruben Ayrapetyan 904be9ece6 Fixing ecma_zt_string_to_number for '-0' string. 2014-10-24 20:39:59 +04:00
Ruben Ayrapetyan e4629cca51 Improving precision of number to zt-string conversion, adding search for the shortest representation of number during the conversion. 2014-10-24 19:15:31 +04:00
Ruben Ayrapetyan 2f16000949 Accessing ecma-number components with new ecma_number_pack / ecma_number_unpack helpers instead of ecma_number_fields_t structure that used GCC extension in CONFIG_ECMA_NUMBER_FLOAT64 mode. 2014-10-23 18:41:49 +04:00
Ruben Ayrapetyan feedb37b20 Replacing way to specify ecma-char encoding and ecma-number type: instead of defining it like CONFIG_ECMA_NUMBER_FLOAT32 now it should be defined like CONFIG_ECMA_NUMBER_TYPE=CONFIG_ECMA_NUMBER_FLOAT32. 2014-10-23 18:33:10 +04:00
Ilmir Usmanov f163f9f5da Allocate memory for string literals and identifiers dinamically. 2014-10-23 17:04:36 +04:00
Ruben Ayrapetyan 7f4a70ccb5 Improving precision of zt-string to ecma-number conversion. 2014-10-23 15:46:42 +04:00
Ilmir Usmanov 6b06cef1c8 Property getters and setters also create scope 2014-10-22 14:26:14 +04:00
Ilmir Usmanov ec6572d501 Add support of function expressions scopes. Uncomment tests. 2014-10-21 22:22:04 +04:00
Ilmir Usmanov 62a42fa087 Add fail tests. Fix parser. 2014-10-21 20:35:07 +04:00
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 b52ca8cca5 Fixing Number.prototype.toString. 2014-10-20 17:27:51 +04:00
Ilmir Usmanov 3f7fca4d39 Implement full support of strict mode in parser. 2014-10-20 16:54:40 +04:00
Ruben Ayrapetyan 8f5160d6bf Implementing ToObject for number arguments. 2014-10-20 15:39:09 +04:00
Ruben Ayrapetyan 1b74687989 Implementing ToObject for boolean arguments. 2014-10-20 15:26:24 +04:00
Ruben Ayrapetyan 2d5a5c37b0 Fixing number bitwise operations. 2014-10-20 13:47:21 +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 8e1156bd9e Support of STM32F3 board. 2014-10-17 21:48:09 +04:00
Ruben Ayrapetyan 9c1428de29 Implementing instantiation of prototype property Object built-in object. 2014-10-16 21:47:25 +04:00
Ruben Ayrapetyan e54023caf2 Throwing CompactProfileError in cases required by Compact Profile. 2014-10-16 21:26:23 +04:00
Ilmir Usmanov bd7fd40a32 Fix 'function' declaration parsing 2014-10-16 21:12:03 +04:00
Ilmir Usmanov b1e6656fb4 Fix property increment 2014-10-16 20:32:19 +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 6520779f46 Initialization of [[PrimitiveValue]] properties of built-in String.prototype, Number.prototype and Boolean.prototype objects. 2014-10-16 20:17:29 +04:00
Ruben Ayrapetyan ed960b78db Introducing CompactProfileError built-in object. 2014-10-16 19:49:47 +04:00