[weakrefs] Ship WeakRef and FinalizationRegistry.

I2S: https://groups.google.com/a/chromium.org/g/blink-dev/c/L04PqDk9eMU
Bug: v8:8179
Change-Id: I52aaa62cdab981b802fa4a986d60421ef6efcfbb
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2158371
Commit-Queue: Shu-yu Guo <syg@chromium.org>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
Cr-Commit-Position: refs/heads/master@{#67295}
This commit is contained in:
Shu-yu Guo 2020-04-21 12:43:26 -07:00 committed by Commit Bot
parent 104b574b3a
commit 30c6bd45be
2 changed files with 14 additions and 11 deletions

View File

@ -217,7 +217,6 @@ DEFINE_IMPLICATION(harmony_weak_refs_with_cleanup_some, harmony_weak_refs)
V(harmony_promise_any, "harmony Promise.any") \ V(harmony_promise_any, "harmony Promise.any") \
V(harmony_string_replaceall, "harmony String.prototype.replaceAll") \ V(harmony_string_replaceall, "harmony String.prototype.replaceAll") \
V(harmony_regexp_sequence, "RegExp Unicode sequence properties") \ V(harmony_regexp_sequence, "RegExp Unicode sequence properties") \
V(harmony_weak_refs, "harmony weak references") \
V(harmony_weak_refs_with_cleanup_some, \ V(harmony_weak_refs_with_cleanup_some, \
"harmony weak references with FinalizationRegistry.prototype.cleanupSome") \ "harmony weak references with FinalizationRegistry.prototype.cleanupSome") \
V(harmony_regexp_match_indices, "harmony regexp match indices") \ V(harmony_regexp_match_indices, "harmony regexp match indices") \
@ -247,14 +246,15 @@ DEFINE_IMPLICATION(harmony_weak_refs_with_cleanup_some, harmony_weak_refs)
#endif #endif
// Features that are shipping (turned on by default, but internal flag remains). // Features that are shipping (turned on by default, but internal flag remains).
#define HARMONY_SHIPPING_BASE(V) \ #define HARMONY_SHIPPING_BASE(V) \
V(harmony_namespace_exports, \ V(harmony_namespace_exports, \
"harmony namespace exports (export * as foo from 'bar')") \ "harmony namespace exports (export * as foo from 'bar')") \
V(harmony_sharedarraybuffer, "harmony sharedarraybuffer") \ V(harmony_sharedarraybuffer, "harmony sharedarraybuffer") \
V(harmony_import_meta, "harmony import.meta property") \ V(harmony_import_meta, "harmony import.meta property") \
V(harmony_dynamic_import, "harmony dynamic import") \ V(harmony_dynamic_import, "harmony dynamic import") \
V(harmony_promise_all_settled, "harmony Promise.allSettled") \ V(harmony_promise_all_settled, "harmony Promise.allSettled") \
V(harmony_private_methods, "harmony private methods in class literals") V(harmony_private_methods, "harmony private methods in class literals") \
V(harmony_weak_refs, "harmony weak references")
#ifdef V8_INTL_SUPPORT #ifdef V8_INTL_SUPPORT
#define HARMONY_SHIPPING(V) \ #define HARMONY_SHIPPING(V) \

View File

@ -3944,9 +3944,12 @@ Handle<JSFunction> Genesis::InstallTypedArray(const char* name,
void Genesis::InitializeExperimentalGlobal() { void Genesis::InitializeExperimentalGlobal() {
#define FEATURE_INITIALIZE_GLOBAL(id, descr) InitializeGlobal_##id(); #define FEATURE_INITIALIZE_GLOBAL(id, descr) InitializeGlobal_##id();
HARMONY_INPROGRESS(FEATURE_INITIALIZE_GLOBAL) // Initialize features from more mature to less mature, because less mature
HARMONY_STAGED(FEATURE_INITIALIZE_GLOBAL) // features may depend on more mature features having been initialized
// already.
HARMONY_SHIPPING(FEATURE_INITIALIZE_GLOBAL) HARMONY_SHIPPING(FEATURE_INITIALIZE_GLOBAL)
HARMONY_STAGED(FEATURE_INITIALIZE_GLOBAL)
HARMONY_INPROGRESS(FEATURE_INITIALIZE_GLOBAL)
#undef FEATURE_INITIALIZE_GLOBAL #undef FEATURE_INITIALIZE_GLOBAL
} }