2382 Commits

Author SHA1 Message Date
Ruben Ayrapetyan
383853c116 Introducing string_literal_copy type descripting string literal copy for using in opcode handlers implementation. 2014-07-17 21:53:26 +04:00
Ruben Ayrapetyan
0209acad65 Introducing exitval opcode for end of script and assertions in unit tests. The opcode finishes interpretation with status code 0 (success) or 1 (failure). 2014-07-17 21:32:29 +04:00
Ruben Ayrapetyan
819b947445 Introducing try_get_string_by_idx interface for retrieving literal string value by it's identifier. 2014-07-17 21:07:25 +04:00
Ruben Ayrapetyan
0a87643eb6 Changing size of ecma_Char_t to 1 byte. 2014-07-17 20:56:20 +04:00
Ruben Ayrapetyan
dd5c9dfb39 Changing return type of opcode handlers to ecma_CompletionValue_t. 2014-07-17 20:53:48 +04:00
Ruben Ayrapetyan
a20aa29354 Templating definition of unimplemented opcodes. 2014-07-17 20:46:47 +04:00
Ruben Ayrapetyan
d7a1566c23 During compilation of unit tests print compilation command line if it has been failed. 2014-07-17 20:43:30 +04:00
Ruben Ayrapetyan
dd3f85b594 Making cppcheck to suppress warnings about missing system includes and unused functions. Setting --error-exitcode to 0 until all other warnings are fixed. 2014-07-17 18:55:25 +04:00
Ruben Ayrapetyan
ffe6ab14bb Adding ctags and ID database to .gitignore list. 2014-07-17 18:55:10 +04:00
e.gavrin
0c9f81dbf9 add var_decl 2014-07-17 15:19:55 +04:00
Ruben Ayrapetyan
124673b5b4 Merge branch 'master' of git-server.vd:jerry 2014-07-17 14:48:41 +04:00
Ruben Ayrapetyan
c0232c45f3 Redirecting all build's and tests' output to out/$(TARGET)/{.,obj,check}. Make clean now is rm -rf ./out. 2014-07-17 14:46:50 +04:00
e.gavrin
9a0b54313d remove opcodes 2014-07-17 13:08:43 +04:00
e.gavrin
080fb4aa5a aaa lickser.c 2014-07-17 11:54:31 +04:00
e.gavrin
a61d31e9bf fix style error: Variable xxx hides enumerator with same name 2014-07-16 23:20:27 +04:00
e.gavrin
73bf0f9be1 remove unused gen_bytecode and save_op_data 2014-07-16 23:03:58 +04:00
Ilmir Usmanov
c53eccbdd6 Merge branch 'master' into geppetto 2014-07-16 22:24:42 +04:00
Ilmir Usmanov
270ee301b4 Start dumping assignment expressions to bytecode; revise bytecode instructions 2014-07-16 22:23:55 +04:00
Ruben Ayrapetyan
6891039184 Fixing assertion on HasBinding result in ecma_OpGetIdentifierReference. 2014-07-16 22:21:15 +04:00
Ruben Ayrapetyan
b300316403 Fixing assertion in ecma_OpGetIdentifierReference. 2014-07-16 22:16:14 +04:00
Ruben Ayrapetyan
6cdb927d14 Implementing ECMA-262 v5 10.2.1.1 operations (declarative environment record's CreateMutableBinding, SetMutableBinding, etc.). 2014-07-16 21:44:10 +04:00
Ruben Ayrapetyan
2598d01105 Renaming ecma_IsUndefinedValue -> ecma_IsValueUndefined and the like; introducing ecma_IsCompletionValueNormal{True,False} helpers. 2014-07-16 21:42:49 +04:00
Ruben Ayrapetyan
c8605bb4d1 Renaming ecma_GC*Property to ecma_Free*Property and moving them to ecma-helpers.c; introducing ecma_CreateNamedProperty, ecma_GetNamedProperty, ecma_GetNamedDataProperty, ecma_FreeProperty (extracted from ecma_GCRun), ecma_DeleteProperty; removing length argument of ecma_NewEcmaString helper. 2014-07-16 21:37:24 +04:00
Ruben Ayrapetyan
8d07e2b239 Introducing ecma_Property{Writable,Enumerable,Configurable}Value_t enum value types for properties' attributes. 2014-07-16 21:19:44 +04:00
Ruben Ayrapetyan
6918db2f59 Replacing 'ecma_Free' prefix in ecma_Free{Object,Property,Number,ArrayFirstChunk,ArrayNonFirstChunk} to 'ecma_Dealloc'. 2014-07-16 21:17:43 +04:00
Ruben Ayrapetyan
b72185696a Introducing ecma_MakeReference and ecma_FreeReference, moving ecma_OpGetIdentifierReference to libecmaoperations/ecma-reference.c. 2014-07-16 17:20:40 +04:00
Ruben Ayrapetyan
60063683aa Rename ecma_GCValue to ecma_FreeValue and move it to ecma-helpers-value.c. Introduce ecma_CopyValue. 2014-07-16 17:12:45 +04:00
Ruben Ayrapetyan
ca420ea0e9 Implementing PutValue for cases:
- base is lexical environment;
      - base is undefined (unresolvable reference);

    Descripting implementation of other PutValue's cases in comments.
2014-07-16 14:41:17 +04:00
Ilmir Usmanov
0c64b78430 Merge branch 'geppetto' 2014-07-16 13:04:54 +04:00
Ilmir Usmanov
438318d788 Generate getop_* functions 2014-07-16 13:04:30 +04:00
e.gavrin
3721569d6c minor formatting fix 2014-07-16 12:47:27 +04:00
Ruben Ayrapetyan
b1f9275048 Merge branch 'master' of git-server.vd:jerry 2014-07-15 21:44:21 +04:00
Ilmir Usmanov
32b4b7c869 Merge branch 'geppetto' 2014-07-15 21:42:33 +04:00
Ilmir Usmanov
87072c6088 Merge with master 2014-07-15 21:42:05 +04:00
Ruben Ayrapetyan
c5cfff3d92 Adding comment to ecma_NewStandardError. 2014-07-15 21:41:47 +04:00
Ruben Ayrapetyan
16be2ee3ab Implementing GetValue for cases:
- base is lexical environment;
  - base is undefined (unresolvable reference);

Descripting implementation of other GetValue's cases in comments.
2014-07-15 21:41:47 +04:00
Ruben Ayrapetyan
56f731a3f2 Introducing ecma_MakeThrowValue constructor for throw completion values. 2014-07-15 21:41:47 +04:00
Ruben Ayrapetyan
cdde0900e3 Introducing native ecma error types and ecma_NewStandardError interface. 2014-07-15 21:41:47 +04:00
Ilmir Usmanov
0647cdd4f1 Add bytecode generator 2014-07-15 19:32:26 +04:00
Ruben Ayrapetyan
4395da05d3 Renaming ecma_Object_t::u_Attributes to u.
Renaming ecma_CompletionValue_t:: completion_type to type, completion_value to value.
Introducing ECMA_TARGET_ID_RESERVED value of ecma_CompletionValue_t::target when it is unused.
Adding ecma_Reference_t type for ECMA-reference.
Introducing some constructors and helpers for ecma-values.
Introducing ecma_FindNamedProperty helper.
Removing ecma_SyntacticReference_t type.
Implementing ecma operation GetIdentifierReference.
Stubs and partial implementation for GetValue, SetValue, lexical environment operations (HasBinding, etc.).
2014-07-15 19:27:15 +04:00
Ruben Ayrapetyan
f88fe5fae3 Moving jerry defines from CFLAGS_COMMON to DEFINES_JERRY and fixing cppcheck arguments. 2014-07-15 19:17:21 +04:00
Ruben Ayrapetyan
2615f28700 Adding JERRY_UNIMPLEMENTED_REF_UNUSED_VARS(...) macros that allow referencing variables that are unused due to partial implementation. 2014-07-15 18:56:09 +04:00
Ruben Ayrapetyan
4ffbb5dc0c Emptying LDFLAGS_OPTIMIZE and LDFLAGS_NO_OPTIMIZE, because their current values are duplicating flags in $(CFLAGS_COMMON). 2014-07-15 15:43:16 +04:00
Ruben Ayrapetyan
b4cafc2ae8 Removing *.linux.flash targets. Adding dependency from check, flash to target of an action, fix path used in flash action. Temporarily changing --error-exitcode parameter of cppcheck to 0. 2014-07-14 21:00:40 +04:00
Ruben Ayrapetyan
18a5852914 Fix src/main.c for target MCU. 2014-07-14 20:53:06 +04:00
Ruben Ayrapetyan
7a2397f235 Introducing new make targets scheme: {dev,debug,release,debug_release}.{linux,stm32f{4}}[.{check,flash}]. 2014-07-14 20:10:46 +04:00
Ruben Ayrapetyan
d4b84f47a8 Fixing type conversion warnings in src/main.c and disabling warnings for third-party headers, included from that module. 2014-07-14 20:03:43 +04:00
Ruben Ayrapetyan
dfb9441e8c Removed typedefs for basic int types and bool, definition of NULL from globals.h. Included <stdint.h>, <stdbool.h>, <stddef.h> in that header. 2014-07-14 19:59:29 +04:00
Ruben Ayrapetyan
63547e9f2c Change bit fields' type from uint32_t to unsigned int (because uint32_t is defined as something other than unsigned int in arm-none-eabi stdint.h; using that type for bit-fields is GCC extension). 2014-07-14 19:56:17 +04:00
Ruben Ayrapetyan
c9e98171fd Remove inline attributes from src/libjsparser/lexer.c. 2014-07-14 19:53:41 +04:00