From 430289b27dcf940e2016c002d174986bf9aea9f5 Mon Sep 17 00:00:00 2001 From: Zoltan Herczeg Date: Fri, 17 Sep 2021 08:18:28 +0200 Subject: [PATCH] Fix built-in types (#4772) JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg zherczeg.u-szeged@partner.samsung.com --- .../ecma/builtin-objects/ecma-builtins.c | 7 - .../ecma/builtin-objects/ecma-builtins.inc.h | 204 +++++++++--------- 2 files changed, 102 insertions(+), 109 deletions(-) diff --git a/jerry-core/ecma/builtin-objects/ecma-builtins.c b/jerry-core/ecma/builtin-objects/ecma-builtins.c index 0f99be297..dc621e2b1 100644 --- a/jerry-core/ecma/builtin-objects/ecma-builtins.c +++ b/jerry-core/ecma/builtin-objects/ecma-builtins.c @@ -384,13 +384,6 @@ ecma_instantiate_builtin (ecma_global_object_t *global_object_p, /**< global obj ecma_object_type_t obj_type = (ecma_object_type_t) (builtin_desc & ECMA_BUILTIN_OBJECT_TYPE_MASK); - JERRY_ASSERT (obj_type == ECMA_OBJECT_TYPE_GENERAL - || obj_type == ECMA_OBJECT_TYPE_CLASS - || obj_type == ECMA_OBJECT_TYPE_ARRAY - || obj_type == ECMA_OBJECT_TYPE_NATIVE_FUNCTION); - /* TODO: Remove this increase by setting the correct values in the defines. */ - obj_type = (ecma_object_type_t) ((int) obj_type + 1); - JERRY_ASSERT (obj_type == ECMA_OBJECT_TYPE_BUILT_IN_GENERAL || obj_type == ECMA_OBJECT_TYPE_BUILT_IN_CLASS || obj_type == ECMA_OBJECT_TYPE_BUILT_IN_ARRAY diff --git a/jerry-core/ecma/builtin-objects/ecma-builtins.inc.h b/jerry-core/ecma/builtin-objects/ecma-builtins.inc.h index 4bac84022..f74cd2534 100644 --- a/jerry-core/ecma/builtin-objects/ecma-builtins.inc.h +++ b/jerry-core/ecma/builtin-objects/ecma-builtins.inc.h @@ -18,14 +18,14 @@ /* The Object.prototype object (15.2.4) */ BUILTIN (ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID__COUNT /* no prototype */, true, object_prototype) /* The Object object (15.2.1) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_OBJECT, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, true, object) @@ -33,14 +33,14 @@ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_OBJECT, #if JERRY_BUILTIN_ARRAY /* The Array.prototype object (15.4.4) */ BUILTIN (ECMA_BUILTIN_ID_ARRAY_PROTOTYPE, - ECMA_OBJECT_TYPE_ARRAY, + ECMA_OBJECT_TYPE_BUILT_IN_ARRAY, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, array_prototype) /* The Array object (15.4.1) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_ARRAY, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, true, array) @@ -50,7 +50,7 @@ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_ARRAY, # if JERRY_BUILTIN_DATE /* The Date.prototype object (20.3.4) */ BUILTIN (ECMA_BUILTIN_ID_DATE_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, date_prototype) @@ -59,7 +59,7 @@ BUILTIN (ECMA_BUILTIN_ID_DATE_PROTOTYPE, # if JERRY_BUILTIN_REGEXP /* The RegExp.prototype object (21.2.5) */ BUILTIN (ECMA_BUILTIN_ID_REGEXP_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, regexp_prototype) @@ -68,7 +68,7 @@ BUILTIN (ECMA_BUILTIN_ID_REGEXP_PROTOTYPE, # if JERRY_BUILTIN_DATE /* The Date.prototype object (15.9.4) */ BUILTIN (ECMA_BUILTIN_ID_DATE_PROTOTYPE, - ECMA_OBJECT_TYPE_CLASS, + ECMA_OBJECT_TYPE_BUILT_IN_CLASS, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, date_prototype) @@ -77,7 +77,7 @@ BUILTIN (ECMA_BUILTIN_ID_DATE_PROTOTYPE, # if JERRY_BUILTIN_REGEXP /* The RegExp.prototype object (15.10.6) */ BUILTIN (ECMA_BUILTIN_ID_REGEXP_PROTOTYPE, - ECMA_OBJECT_TYPE_CLASS, + ECMA_OBJECT_TYPE_BUILT_IN_CLASS, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, regexp_prototype) @@ -87,14 +87,14 @@ BUILTIN (ECMA_BUILTIN_ID_REGEXP_PROTOTYPE, #if JERRY_BUILTIN_STRING /* The String.prototype object (15.5.4) */ BUILTIN (ECMA_BUILTIN_ID_STRING_PROTOTYPE, - ECMA_OBJECT_TYPE_CLASS, + ECMA_OBJECT_TYPE_BUILT_IN_CLASS, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, string_prototype) /* The String object (15.5.1) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_STRING, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, true, string) @@ -103,14 +103,14 @@ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_STRING, #if JERRY_BUILTIN_BOOLEAN /* The Boolean.prototype object (15.6.4) */ BUILTIN (ECMA_BUILTIN_ID_BOOLEAN_PROTOTYPE, - ECMA_OBJECT_TYPE_CLASS, + ECMA_OBJECT_TYPE_BUILT_IN_CLASS, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, boolean_prototype) /* The Boolean object (15.6.1) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_BOOLEAN, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, true, boolean) @@ -119,14 +119,14 @@ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_BOOLEAN, #if JERRY_BUILTIN_NUMBER /* The Number.prototype object (15.7.4) */ BUILTIN (ECMA_BUILTIN_ID_NUMBER_PROTOTYPE, - ECMA_OBJECT_TYPE_CLASS, + ECMA_OBJECT_TYPE_BUILT_IN_CLASS, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, number_prototype) /* The Number object (15.7.1) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_NUMBER, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, true, number) @@ -134,14 +134,14 @@ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_NUMBER, /* The Function.prototype object (15.3.4) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, function_prototype) /* The Function object (15.3.1) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_FUNCTION, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, true, function) @@ -149,7 +149,7 @@ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_FUNCTION, #if JERRY_BUILTIN_MATH /* The Math object (15.8) */ BUILTIN (ECMA_BUILTIN_ID_MATH, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, math) @@ -159,7 +159,7 @@ BUILTIN (ECMA_BUILTIN_ID_MATH, /* The Reflect object (26.1) */ BUILTIN (ECMA_BUILTIN_ID_REFLECT, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, reflect) @@ -168,7 +168,7 @@ BUILTIN (ECMA_BUILTIN_ID_REFLECT, #if JERRY_BUILTIN_JSON /* The JSON object (15.12) */ BUILTIN (ECMA_BUILTIN_ID_JSON, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, json) @@ -177,7 +177,7 @@ BUILTIN (ECMA_BUILTIN_ID_JSON, #if JERRY_BUILTIN_DATE /* The Date object (15.9.3) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_DATE, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, true, date) @@ -186,7 +186,7 @@ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_DATE, #if JERRY_BUILTIN_REGEXP /* The RegExp object (15.10) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_REGEXP, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, true, regexp) @@ -200,14 +200,14 @@ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_REGEXP, /* The Error object (15.11.1) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_ERROR, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, true, error) /* The Error.prototype object (15.11.4) */ BUILTIN (ECMA_BUILTIN_ID_ERROR_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, error_prototype) @@ -215,70 +215,70 @@ BUILTIN (ECMA_BUILTIN_ID_ERROR_PROTOTYPE, #if JERRY_BUILTIN_ERRORS /* The EvalError.prototype object (15.11.6.1) */ BUILTIN (ECMA_BUILTIN_ID_EVAL_ERROR_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_ERROR_PROTOTYPE, true, eval_error_prototype) /* The EvalError object (15.11.6.1) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_EVAL_ERROR, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_NATIVE_ERROR_PROTOTYPE_ID, true, eval_error) /* The RangeError.prototype object (15.11.6.2) */ BUILTIN (ECMA_BUILTIN_ID_RANGE_ERROR_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_ERROR_PROTOTYPE, true, range_error_prototype) /* The RangeError object (15.11.6.2) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_RANGE_ERROR, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_NATIVE_ERROR_PROTOTYPE_ID, true, range_error) /* The ReferenceError.prototype object (15.11.6.3) */ BUILTIN (ECMA_BUILTIN_ID_REFERENCE_ERROR_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_ERROR_PROTOTYPE, true, reference_error_prototype) /* The ReferenceError object (15.11.6.3) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_REFERENCE_ERROR, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_NATIVE_ERROR_PROTOTYPE_ID, true, reference_error) /* The SyntaxError.prototype object (15.11.6.4) */ BUILTIN (ECMA_BUILTIN_ID_SYNTAX_ERROR_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_ERROR_PROTOTYPE, true, syntax_error_prototype) /* The SyntaxError object (15.11.6.4) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_SYNTAX_ERROR, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_NATIVE_ERROR_PROTOTYPE_ID, true, syntax_error) /* The TypeError.prototype object (15.11.6.5) */ BUILTIN (ECMA_BUILTIN_ID_TYPE_ERROR_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_ERROR_PROTOTYPE, true, type_error_prototype) /* The TypeError object (15.11.6.5) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_TYPE_ERROR, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_NATIVE_ERROR_PROTOTYPE_ID, true, type_error) @@ -286,14 +286,14 @@ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_TYPE_ERROR, #if JERRY_ESNEXT /* The AggregateError.prototype object (15.11.6.5) */ BUILTIN (ECMA_BUILTIN_ID_AGGREGATE_ERROR_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_ERROR_PROTOTYPE, true, aggregate_error_prototype) /* The AggregateError object (15.11.6.5) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_AGGREGATE_ERROR, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_NATIVE_ERROR_PROTOTYPE_ID, true, aggregate_error) @@ -301,14 +301,14 @@ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_AGGREGATE_ERROR, /* The URIError.prototype object (15.11.6.6) */ BUILTIN (ECMA_BUILTIN_ID_URI_ERROR_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_ERROR_PROTOTYPE, true, uri_error_prototype) /* The URIError object (15.11.6.6) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_URI_ERROR, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_NATIVE_ERROR_PROTOTYPE_ID, true, uri_error) @@ -316,7 +316,7 @@ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_URI_ERROR, /**< The [[ThrowTypeError]] object (13.2.3) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_TYPE_ERROR_THROWER, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, false, type_error_thrower) @@ -325,14 +325,14 @@ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_TYPE_ERROR_THROWER, /* The ArrayBuffer.prototype object (ES2015 24.1.4) */ BUILTIN (ECMA_BUILTIN_ID_ARRAYBUFFER_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, arraybuffer_prototype) /* The ArrayBuffer object (ES2015 24.1.2) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_ARRAYBUFFER, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, true, arraybuffer) @@ -341,14 +341,14 @@ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_ARRAYBUFFER, /* The SharedArrayBuffer.prototype object (ES2015 24.2.4) */ BUILTIN (ECMA_BUILTIN_ID_SHARED_ARRAYBUFFER_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, shared_arraybuffer_prototype) /* The SharedArrayBuffer object (ES2015 24.2.2) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_SHARED_ARRAYBUFFER, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, true, shared_arraybuffer) @@ -356,7 +356,7 @@ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_SHARED_ARRAYBUFFER, /* The %TypedArrayPrototype% object (ES2015 24.2.3) */ BUILTIN (ECMA_BUILTIN_ID_TYPEDARRAY_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, typedarray_prototype) @@ -364,62 +364,62 @@ BUILTIN (ECMA_BUILTIN_ID_TYPEDARRAY_PROTOTYPE, /* The %TypedArray% intrinsic object (ES2015 22.2.1) Note: The routines must be in this order. */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_TYPEDARRAY, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, true, typedarray) BUILTIN_ROUTINE (ECMA_BUILTIN_ID_INT8ARRAY, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_TYPEDARRAY, true, int8array) BUILTIN_ROUTINE (ECMA_BUILTIN_ID_UINT8ARRAY, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_TYPEDARRAY, true, uint8array) BUILTIN_ROUTINE (ECMA_BUILTIN_ID_UINT8CLAMPEDARRAY, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_TYPEDARRAY, true, uint8clampedarray) BUILTIN_ROUTINE (ECMA_BUILTIN_ID_INT16ARRAY, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_TYPEDARRAY, true, int16array) BUILTIN_ROUTINE (ECMA_BUILTIN_ID_UINT16ARRAY, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_TYPEDARRAY, true, uint16array) BUILTIN_ROUTINE (ECMA_BUILTIN_ID_INT32ARRAY, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_TYPEDARRAY, true, int32array) BUILTIN_ROUTINE (ECMA_BUILTIN_ID_UINT32ARRAY, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_TYPEDARRAY, true, uint32array) BUILTIN_ROUTINE (ECMA_BUILTIN_ID_FLOAT32ARRAY, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_TYPEDARRAY, true, float32array) #if JERRY_NUMBER_TYPE_FLOAT64 BUILTIN_ROUTINE (ECMA_BUILTIN_ID_FLOAT64ARRAY, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_TYPEDARRAY, true, float64array) @@ -427,69 +427,69 @@ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_FLOAT64ARRAY, #if JERRY_BUILTIN_BIGINT BUILTIN_ROUTINE (ECMA_BUILTIN_ID_BIGINT64ARRAY, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_TYPEDARRAY, true, bigint64array) BUILTIN_ROUTINE (ECMA_BUILTIN_ID_BIGUINT64ARRAY, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_TYPEDARRAY, true, biguint64array) #endif /* JERRY_BUILTIN_BIGINT */ BUILTIN (ECMA_BUILTIN_ID_INT8ARRAY_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_TYPEDARRAY_PROTOTYPE, true, int8array_prototype) BUILTIN (ECMA_BUILTIN_ID_UINT8ARRAY_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_TYPEDARRAY_PROTOTYPE, true, uint8array_prototype) BUILTIN (ECMA_BUILTIN_ID_UINT8CLAMPEDARRAY_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_TYPEDARRAY_PROTOTYPE, true, uint8clampedarray_prototype) BUILTIN (ECMA_BUILTIN_ID_INT16ARRAY_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_TYPEDARRAY_PROTOTYPE, true, int16array_prototype) BUILTIN (ECMA_BUILTIN_ID_UINT16ARRAY_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_TYPEDARRAY_PROTOTYPE, true, uint16array_prototype) BUILTIN (ECMA_BUILTIN_ID_INT32ARRAY_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_TYPEDARRAY_PROTOTYPE, true, int32array_prototype) BUILTIN (ECMA_BUILTIN_ID_UINT32ARRAY_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_TYPEDARRAY_PROTOTYPE, true, uint32array_prototype) BUILTIN (ECMA_BUILTIN_ID_FLOAT32ARRAY_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_TYPEDARRAY_PROTOTYPE, true, float32array_prototype) #if JERRY_NUMBER_TYPE_FLOAT64 BUILTIN (ECMA_BUILTIN_ID_FLOAT64ARRAY_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_TYPEDARRAY_PROTOTYPE, true, float64array_prototype) @@ -497,13 +497,13 @@ BUILTIN (ECMA_BUILTIN_ID_FLOAT64ARRAY_PROTOTYPE, #if JERRY_BUILTIN_BIGINT BUILTIN (ECMA_BUILTIN_ID_BIGINT64ARRAY_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_TYPEDARRAY_PROTOTYPE, true, bigint64array_prototype) BUILTIN (ECMA_BUILTIN_ID_BIGUINT64ARRAY_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_TYPEDARRAY_PROTOTYPE, true, biguint64array_prototype) @@ -513,13 +513,13 @@ BUILTIN (ECMA_BUILTIN_ID_BIGUINT64ARRAY_PROTOTYPE, #if JERRY_ESNEXT BUILTIN (ECMA_BUILTIN_ID_PROMISE_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, promise_prototype) BUILTIN_ROUTINE (ECMA_BUILTIN_ID_PROMISE, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, true, promise) @@ -530,56 +530,56 @@ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_PROMISE, /* The Map prototype object (23.1.3) */ BUILTIN (ECMA_BUILTIN_ID_MAP_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, map_prototype) /* The Map routine (ECMA-262 v6, 23.1.1.1) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_MAP, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, true, map) /* The Set prototype object (23.1.3) */ BUILTIN (ECMA_BUILTIN_ID_SET_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, set_prototype) /* The Set routine (ECMA-262 v6, 23.1.1.1) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_SET, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, true, set) /* The WeakMap prototype object (23.1.3) */ BUILTIN (ECMA_BUILTIN_ID_WEAKMAP_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, weakmap_prototype) /* The WeakMap routine (ECMA-262 v6, 23.1.1.1) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_WEAKMAP, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, true, weakmap) /* The WeakSet prototype object (23.1.3) */ BUILTIN (ECMA_BUILTIN_ID_WEAKSET_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, weakset_prototype) /* The WeakSet routine (ECMA-262 v6, 23.1.1.1) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_WEAKSET, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, true, weakset) @@ -590,14 +590,14 @@ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_WEAKSET, /* The WeakRef prototype object */ BUILTIN (ECMA_BUILTIN_ID_WEAKREF_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, weakref_prototype) /* The WeakRef routine */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_WEAKREF, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, true, weakref) @@ -607,7 +607,7 @@ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_WEAKREF, #if (JERRY_BUILTIN_PROXY) /* The Proxy routine (ECMA-262 v6, 26.2.1) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_PROXY, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, true, proxy) @@ -617,119 +617,119 @@ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_PROXY, /* Intrinsic hidden builtin object */ BUILTIN (ECMA_BUILTIN_ID_INTRINSIC_OBJECT, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID__COUNT /* no prototype */, true, intrinsic) /* The Array.prototype[@@unscopables] object */ BUILTIN (ECMA_BUILTIN_ID_ARRAY_PROTOTYPE_UNSCOPABLES, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID__COUNT /* no prototype */, true, array_prototype_unscopables) /* The Symbol prototype object (ECMA-262 v6, 19.4.2.7) */ BUILTIN (ECMA_BUILTIN_ID_SYMBOL_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, symbol_prototype) /* The Symbol routine (ECMA-262 v6, 19.4.2.1) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_SYMBOL, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, true, symbol) /* The %AsyncFunction% object (ECMA-262 v11, 25.7.2) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_ASYNC_FUNCTION, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_FUNCTION, true, async_function) /* The %AsyncFunctionPrototype% object (ECMA-262 v11, 25.7.3) */ BUILTIN (ECMA_BUILTIN_ID_ASYNC_FUNCTION_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, true, async_function_prototype) /* The %IteratorPrototype% object (ECMA-262 v6, 25.1.2) */ BUILTIN (ECMA_BUILTIN_ID_ITERATOR_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, iterator_prototype) /* The %ArrayIteratorPrototype% object (ECMA-262 v6, 22.1.5.2) */ BUILTIN (ECMA_BUILTIN_ID_ARRAY_ITERATOR_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_ITERATOR_PROTOTYPE, true, array_iterator_prototype) /* The %StringIteratorPrototype% object (ECMA-262 v6, 22.1.5.2) */ BUILTIN (ECMA_BUILTIN_ID_STRING_ITERATOR_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_ITERATOR_PROTOTYPE, true, string_iterator_prototype) /* The %RegExpStringIteratorPrototype% object (ECMA-262 v11, 21.2.7.1) */ BUILTIN (ECMA_BUILTIN_ID_REGEXP_STRING_ITERATOR_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_ITERATOR_PROTOTYPE, true, regexp_string_iterator_prototype) /* The %AsyncIteratorPrototype% object (ECMA-262 v10, 25.1.3) */ BUILTIN (ECMA_BUILTIN_ID_ASYNC_ITERATOR_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, async_iterator_prototype) /* The %(GeneratorFunction)% object */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_GENERATOR_FUNCTION, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_FUNCTION, true, generator_function) /* The %(Generator)% object */ BUILTIN (ECMA_BUILTIN_ID_GENERATOR, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, true, generator) /* The %(Generator).prototype% object */ BUILTIN (ECMA_BUILTIN_ID_GENERATOR_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_ITERATOR_PROTOTYPE, true, generator_prototype) /* The %(AsyncGeneratorFunction)% object */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_ASYNC_GENERATOR_FUNCTION, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_FUNCTION, true, async_generator_function) /* The %(AsyncGenerator)% object */ BUILTIN (ECMA_BUILTIN_ID_ASYNC_GENERATOR, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, true, async_generator) /* The %(AsyncGenerator).prototype% object */ BUILTIN (ECMA_BUILTIN_ID_ASYNC_GENERATOR_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_ASYNC_ITERATOR_PROTOTYPE, true, async_generator_prototype) @@ -737,14 +737,14 @@ BUILTIN (ECMA_BUILTIN_ID_ASYNC_GENERATOR_PROTOTYPE, #if JERRY_BUILTIN_CONTAINER /* The %SetIteratorPrototype% object (ECMA-262 v6, 23.2.5.2) */ BUILTIN (ECMA_BUILTIN_ID_SET_ITERATOR_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_ITERATOR_PROTOTYPE, true, set_iterator_prototype) /* The %MapIteratorPrototype% object (ECMA-262 v6, 23.1.5.2) */ BUILTIN (ECMA_BUILTIN_ID_MAP_ITERATOR_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_ITERATOR_PROTOTYPE, true, map_iterator_prototype) @@ -755,14 +755,14 @@ BUILTIN (ECMA_BUILTIN_ID_MAP_ITERATOR_PROTOTYPE, #if JERRY_BUILTIN_BIGINT /* The %BigInt.prototype% object */ BUILTIN (ECMA_BUILTIN_ID_BIGINT_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, bigint_prototype) /* The %BigInt% object */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_BIGINT, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, true, bigint) @@ -771,14 +771,14 @@ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_BIGINT, #if JERRY_BUILTIN_DATAVIEW /* The DataView prototype object (ECMA-262 v6, 24.2.3.1) */ BUILTIN (ECMA_BUILTIN_ID_DATAVIEW_PROTOTYPE, - ECMA_OBJECT_TYPE_GENERAL, + ECMA_OBJECT_TYPE_BUILT_IN_GENERAL, ECMA_BUILTIN_ID_OBJECT_PROTOTYPE, true, dataview_prototype) /* The DataView routine (ECMA-262 v6, 24.2.2.1) */ BUILTIN_ROUTINE (ECMA_BUILTIN_ID_DATAVIEW, - ECMA_OBJECT_TYPE_NATIVE_FUNCTION, + ECMA_OBJECT_TYPE_BUILT_IN_FUNCTION, ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, true, dataview)