Remove ecma_simple_value_t and refactor ecma_make_simple_value (#2135)

This patch removes all ecma_make_simple_value calls to make the code more easy to understand.
Also removes the type ecma_simple_value_t which improves the performance in related code paths by calculating the value of new ecma_value_t is no longer needed.

JerryScript-DCO-1.0-Signed-off-by: Robert Fancsik frobert@inf.u-szeged.hu
This commit is contained in:
Robert Fancsik
2017-12-06 18:06:07 +01:00
committed by Dániel Bátyai
parent 1007b63024
commit e83de3accd
60 changed files with 470 additions and 482 deletions
+8 -8
View File
@@ -64,7 +64,7 @@ vm_var_decl (vm_frame_ctx_t *frame_ctx_p, /**< interpreter context */
var_name_str_p,
vm_is_strict_mode ())));
}
return ecma_make_simple_value (ECMA_SIMPLE_VALUE_EMPTY);
return ECMA_VALUE_EMPTY;
} /* vm_var_decl */
/**
@@ -92,7 +92,7 @@ opfunc_logical_not (ecma_value_t left_value) /**< left value */
ecma_value_t
opfunc_typeof (ecma_value_t left_value) /**< left value */
{
ecma_value_t ret_value = ecma_make_simple_value (ECMA_SIMPLE_VALUE_EMPTY);
ecma_value_t ret_value = ECMA_VALUE_EMPTY;
ecma_string_t *type_str_p = NULL;
@@ -208,15 +208,15 @@ vm_op_delete_prop (ecma_value_t object, /**< base object */
ecma_value_t property, /**< property name */
bool is_strict) /**< strict mode */
{
ecma_value_t completion_value = ecma_make_simple_value (ECMA_SIMPLE_VALUE_EMPTY);
ecma_value_t completion_value = ECMA_VALUE_EMPTY;
if (ecma_is_value_undefined (object))
{
completion_value = ecma_make_simple_value (ECMA_SIMPLE_VALUE_TRUE);
completion_value = ECMA_VALUE_TRUE;
}
else
{
completion_value = ecma_make_simple_value (ECMA_SIMPLE_VALUE_EMPTY);
completion_value = ECMA_VALUE_EMPTY;
ECMA_TRY_CATCH (check_coercible_ret,
ecma_op_check_object_coercible (object),
@@ -259,7 +259,7 @@ ecma_value_t
vm_op_delete_var (jmem_cpointer_t name_literal, /**< name literal */
ecma_object_t *lex_env_p) /**< lexical environment */
{
ecma_value_t completion_value = ecma_make_simple_value (ECMA_SIMPLE_VALUE_EMPTY);
ecma_value_t completion_value = ECMA_VALUE_EMPTY;
ecma_string_t *var_name_str_p = JMEM_CP_GET_NON_NULL_POINTER (ecma_string_t, name_literal);
@@ -267,7 +267,7 @@ vm_op_delete_var (jmem_cpointer_t name_literal, /**< name literal */
if (ref_base_lex_env_p == NULL)
{
completion_value = ecma_make_simple_value (ECMA_SIMPLE_VALUE_TRUE);
completion_value = ECMA_VALUE_TRUE;
}
else
{
@@ -292,7 +292,7 @@ ecma_collection_header_t *
opfunc_for_in (ecma_value_t left_value, /**< left value */
ecma_value_t *result_obj_p) /**< expression object */
{
ecma_value_t compl_val = ecma_make_simple_value (ECMA_SIMPLE_VALUE_EMPTY);
ecma_value_t compl_val = ECMA_VALUE_EMPTY;
ecma_collection_header_t *prop_names_p = NULL;
/* 3. */