Remove class id storing for class objects (#4645)
The two bytes which stored the id is free to use. Currently the only exception is containers. JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg zherczeg.u-szeged@partner.samsung.com
This commit is contained in:
@@ -739,7 +739,6 @@ ecma_builtin_date_create (ecma_number_t tv)
|
||||
ecma_date_object_t *date_object_p = (ecma_date_object_t *) obj_p;
|
||||
date_object_p->header.u.cls.type = ECMA_OBJECT_CLASS_DATE;
|
||||
date_object_p->header.u.cls.u1.date_flags = ECMA_DATE_TZA_NONE;
|
||||
date_object_p->header.u.cls.u2.id = LIT_MAGIC_STRING_DATE_UL;
|
||||
date_object_p->header.u.cls.u3.tza = 0;
|
||||
date_object_p->date_value = tv;
|
||||
#else /* !JERRY_ESNEXT */
|
||||
@@ -751,7 +750,6 @@ ecma_builtin_date_create (ecma_number_t tv)
|
||||
|
||||
ecma_extended_object_t *ext_object_p = (ecma_extended_object_t *) obj_p;
|
||||
ext_object_p->u.cls.type = ECMA_OBJECT_CLASS_DATE;
|
||||
ext_object_p->u.cls.u2.id = LIT_MAGIC_STRING_DATE_UL;
|
||||
ECMA_SET_INTERNAL_VALUE_POINTER (ext_object_p->u.cls.u3.date, date_value_p);
|
||||
#endif /* JERRY_ESNEXT */
|
||||
|
||||
|
||||
@@ -82,7 +82,6 @@ ecma_builtin_weakref_dispatch_construct (const ecma_value_t *arguments_list_p, /
|
||||
ecma_deref_object (proto_p);
|
||||
ecma_extended_object_t *ext_obj_p = (ecma_extended_object_t *) object_p;
|
||||
ext_obj_p->u.cls.type = ECMA_OBJECT_CLASS_WEAKREF;
|
||||
ext_obj_p->u.cls.u2.id = LIT_MAGIC_STRING_WEAKREF_UL;
|
||||
ext_obj_p->u.cls.u3.target = arguments_list_p[0];
|
||||
ecma_op_object_set_weak (ecma_get_object_from_value (arguments_list_p[0]), object_p);
|
||||
|
||||
|
||||
@@ -464,7 +464,6 @@ ecma_instantiate_builtin (ecma_global_object_t *global_object_p, /**< global obj
|
||||
ecma_extended_object_t *ext_object_p = (ecma_extended_object_t *) obj_p;
|
||||
|
||||
ext_object_p->u.cls.type = ECMA_OBJECT_CLASS_STRING;
|
||||
ext_object_p->u.cls.u2.id = LIT_MAGIC_STRING_STRING_UL;
|
||||
ext_object_p->u.cls.u3.value = ecma_make_magic_string_value (LIT_MAGIC_STRING__EMPTY);
|
||||
break;
|
||||
}
|
||||
@@ -477,7 +476,6 @@ ecma_instantiate_builtin (ecma_global_object_t *global_object_p, /**< global obj
|
||||
ecma_extended_object_t *ext_object_p = (ecma_extended_object_t *) obj_p;
|
||||
|
||||
ext_object_p->u.cls.type = ECMA_OBJECT_CLASS_NUMBER;
|
||||
ext_object_p->u.cls.u2.id = LIT_MAGIC_STRING_NUMBER_UL;
|
||||
ext_object_p->u.cls.u3.value = ecma_make_integer_value (0);
|
||||
break;
|
||||
}
|
||||
@@ -490,7 +488,6 @@ ecma_instantiate_builtin (ecma_global_object_t *global_object_p, /**< global obj
|
||||
ecma_extended_object_t *ext_object_p = (ecma_extended_object_t *) obj_p;
|
||||
|
||||
ext_object_p->u.cls.type = ECMA_OBJECT_CLASS_BOOLEAN;
|
||||
ext_object_p->u.cls.u2.id = LIT_MAGIC_STRING_BOOLEAN_UL;
|
||||
ext_object_p->u.cls.u3.value = ECMA_VALUE_FALSE;
|
||||
break;
|
||||
}
|
||||
@@ -504,7 +501,6 @@ ecma_instantiate_builtin (ecma_global_object_t *global_object_p, /**< global obj
|
||||
ecma_extended_object_t *ext_object_p = (ecma_extended_object_t *) obj_p;
|
||||
|
||||
ext_object_p->u.cls.type = ECMA_OBJECT_CLASS_DATE;
|
||||
ext_object_p->u.cls.u2.id = LIT_MAGIC_STRING_DATE_UL;
|
||||
|
||||
ecma_number_t *prim_prop_num_value_p = ecma_alloc_number ();
|
||||
*prim_prop_num_value_p = ecma_number_make_nan ();
|
||||
@@ -520,7 +516,6 @@ ecma_instantiate_builtin (ecma_global_object_t *global_object_p, /**< global obj
|
||||
ecma_extended_object_t *ext_object_p = (ecma_extended_object_t *) obj_p;
|
||||
|
||||
ext_object_p->u.cls.type = ECMA_OBJECT_CLASS_REGEXP;
|
||||
ext_object_p->u.cls.u2.id = LIT_MAGIC_STRING_REGEXP_UL;
|
||||
|
||||
re_compiled_code_t *bc_p = re_compile_bytecode (ecma_get_magic_string (LIT_MAGIC_STRING_EMPTY_NON_CAPTURE_GROUP),
|
||||
RE_FLAG_EMPTY);
|
||||
|
||||
@@ -1863,8 +1863,8 @@ ecma_builtin_typedarray_prototype_dispatch_routine (uint8_t builtin_routine_id,
|
||||
}
|
||||
case ECMA_TYPEDARRAY_PROTOTYPE_ROUTINE_TO_STRING_TAG_GETTER:
|
||||
{
|
||||
ecma_extended_object_t *obj_p = (ecma_extended_object_t *) typedarray_p;
|
||||
return ecma_make_magic_string_value (obj_p->u.cls.u2.id);
|
||||
ecma_extended_object_t *object_p = (ecma_extended_object_t *) typedarray_p;
|
||||
return ecma_make_magic_string_value (ecma_get_typedarray_magic_string_id (object_p->u.cls.u1.typedarray_type));
|
||||
}
|
||||
default:
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user