commit 6c2810f8e125f987d4790623f8bf837a8e3b74da
parent c528ae17f04fdcfa150e5c0ae819bbd15a8d6e3e
Author: Meg Ford <meg387@gmail.com>
Date: Mon, 3 Nov 2025 17:28:37 +0000
Bug 1997187 - Add preference and shell option for `iterator chunking` proposal. r=dminor
Differential Revision: https://phabricator.services.mozilla.com/D270972
Diffstat:
2 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/js/src/shell/js.cpp b/js/src/shell/js.cpp
@@ -13209,7 +13209,9 @@ bool InitOptionParser(OptionParser& op) {
!op.addBoolOption('\0', "enable-upsert", "Enable Upsert proposal") ||
!op.addBoolOption('\0', "enable-import-bytes", "Enable import bytes") ||
!op.addBoolOption('\0', "enable-arraybuffer-immutable",
- "Enable immutable ArrayBuffers")) {
+ "Enable immutable ArrayBuffers") ||
+ !op.addBoolOption('\0', "enable-iterator-chunking",
+ "Enable Iterator Chunking")) {
return false;
}
@@ -13288,6 +13290,9 @@ bool SetGlobalOptionsPreJSInit(const OptionParser& op) {
if (op.getBoolOption("enable-import-bytes")) {
JS::Prefs::setAtStartup_experimental_import_bytes(true);
}
+ if (op.getBoolOption("enable-iterator-chunking")) {
+ JS::Prefs::setAtStartup_experimental_iterator_chunking(true);
+ }
#endif
#ifdef ENABLE_EXPLICIT_RESOURCE_MANAGEMENT
if (op.getBoolOption("enable-explicit-resource-management")) {
diff --git a/modules/libpref/init/StaticPrefList.yaml b/modules/libpref/init/StaticPrefList.yaml
@@ -8990,6 +8990,13 @@
mirror: always
set_spidermonkey_pref: startup
+ # Experimental support for Iterator Chunking in JavaScript.
+- name: javascript.options.experimental.iterator_chunking
+ type: bool
+ value: false
+ mirror: always
+ set_spidermonkey_pref: startup
+
#endif // NIGHTLY_BUILD
# Whether to Baseline-compile self-hosted functions the first time they are