Passing less number of arguments to a function is generally faster. So
the three boolean arguments of ecma_create_named_data_property and the two boolean arguments of ecma_create_named_accessor_property are combined into one uint8_t argument. On ARM-32 it is preferred to have less than four arguments, since these arguments can be passed in registers. JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg zherczeg.u-szeged@partner.samsung.com
This commit is contained in:
@@ -291,6 +291,29 @@ typedef enum
|
||||
ECMA_PROPERTY_FLAG_LCACHED = 1u << (ECMA_PROPERTY_FLAG_SHIFT + 3), /**< property is lcached */
|
||||
} ecma_property_flags_t;
|
||||
|
||||
/**
|
||||
* Property flags configurable, enumerable, writable.
|
||||
*/
|
||||
#define ECMA_PROPERTY_CONFIGURABLE_ENUMERABLE_WRITABLE \
|
||||
(ECMA_PROPERTY_FLAG_CONFIGURABLE | ECMA_PROPERTY_FLAG_ENUMERABLE | ECMA_PROPERTY_FLAG_WRITABLE)
|
||||
|
||||
/**
|
||||
* Property flags configurable, enumerable.
|
||||
*/
|
||||
#define ECMA_PROPERTY_CONFIGURABLE_ENUMERABLE \
|
||||
(ECMA_PROPERTY_FLAG_CONFIGURABLE | ECMA_PROPERTY_FLAG_ENUMERABLE)
|
||||
|
||||
/**
|
||||
* Property flags configurable, enumerable.
|
||||
*/
|
||||
#define ECMA_PROPERTY_CONFIGURABLE_WRITABLE \
|
||||
(ECMA_PROPERTY_FLAG_CONFIGURABLE | ECMA_PROPERTY_FLAG_WRITABLE)
|
||||
|
||||
/**
|
||||
* No attributes can be changed for this property.
|
||||
*/
|
||||
#define ECMA_PROPERTY_FIXED 0
|
||||
|
||||
/**
|
||||
* Abstract property representation.
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user