Improve builtin instantiation (#2226)
* Resolve linker errors with -O0 in some compilers * Reduce the stack usage JerryScript-DCO-1.0-Signed-off-by: László Langó llango.u-szeged@partner.samsung.com
This commit is contained in:
@@ -69,11 +69,11 @@ typedef struct
|
||||
uint16_t value; /**< value of the property */
|
||||
} ecma_builtin_property_descriptor_t;
|
||||
|
||||
#define BUILTIN(builtin_id, \
|
||||
object_type, \
|
||||
object_prototype_builtin_id, \
|
||||
is_extensible, \
|
||||
lowercase_name) \
|
||||
#define BUILTIN_ROUTINE(builtin_id, \
|
||||
object_type, \
|
||||
object_prototype_builtin_id, \
|
||||
is_extensible, \
|
||||
lowercase_name) \
|
||||
extern const ecma_builtin_property_descriptor_t \
|
||||
ecma_builtin_ ## lowercase_name ## _property_descriptor_list[]; \
|
||||
ecma_value_t \
|
||||
@@ -83,10 +83,25 @@ ecma_value_t \
|
||||
ecma_builtin_ ## lowercase_name ## _dispatch_construct (const ecma_value_t *, \
|
||||
ecma_length_t); \
|
||||
ecma_value_t \
|
||||
ecma_builtin_ ## lowercase_name ## _dispatch_routine (uint16_t builtin_routine_id, \
|
||||
ecma_value_t this_arg_value, \
|
||||
const ecma_value_t [], \
|
||||
ecma_length_t);
|
||||
#define BUILTIN(builtin_id, \
|
||||
object_type, \
|
||||
object_prototype_builtin_id, \
|
||||
is_extensible, \
|
||||
lowercase_name) \
|
||||
extern const ecma_builtin_property_descriptor_t \
|
||||
ecma_builtin_ ## lowercase_name ## _property_descriptor_list[]; \
|
||||
ecma_value_t \
|
||||
ecma_builtin_ ## lowercase_name ## _dispatch_routine (uint16_t builtin_routine_id, \
|
||||
ecma_value_t this_arg_value, \
|
||||
const ecma_value_t [], \
|
||||
ecma_length_t);
|
||||
#include "ecma-builtins.inc.h"
|
||||
|
||||
#undef BUILTIN_ROUTINE
|
||||
#undef BUILTIN
|
||||
|
||||
#endif /* !ECMA_BUILTINS_INTERNAL_H */
|
||||
|
||||
Reference in New Issue
Block a user