[gjs/mozjs91: 25/40] Update GC API
- From: Philip Chimento <pchimento src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gjs/mozjs91: 25/40] Update GC API
- Date: Sun, 16 Jan 2022 21:37:03 +0000 (UTC)
commit 380a3e2b9961e35e0923e41c0101f593f96f0a24
Author: Evan Welsh <contact evanwelsh com>
Date: Sat Aug 7 14:35:06 2021 -0700
Update GC API
GC_* options are now JS::GCOptions, JSGC_MODE has been removed
in favor of individual flags. JSGC_MODE_INCREMENTAL is now
JSGC_INCREMENTAL_GC_ENABLED
See https://bugzilla.mozilla.org/show_bug.cgi?id=1686249
gjs/engine.cpp | 13 +++----------
gjs/jsapi-util.cpp | 2 +-
2 files changed, 4 insertions(+), 11 deletions(-)
---
diff --git a/gjs/engine.cpp b/gjs/engine.cpp
index 253c546ef..209c5c73e 100644
--- a/gjs/engine.cpp
+++ b/gjs/engine.cpp
@@ -134,19 +134,12 @@ JSContext* gjs_create_js_context(GjsContextPrivate* uninitialized_gjs) {
return nullptr;
}
- // commented are defaults in moz-24
+ // For additional context on these options, see
+ // https://searchfox.org/mozilla-esr91/rev/c49725508e97c1e2e2bb3bf9ed0ba14b2016abac/js/public/GCAPI.h#53
JS_SetNativeStackQuota(cx, 1024 * 1024);
JS_SetGCParameter(cx, JSGC_MAX_BYTES, -1);
- JS_SetGCParameter(cx, JSGC_MODE, JSGC_MODE_INCREMENTAL);
+ JS_SetGCParameter(cx, JSGC_INCREMENTAL_GC_ENABLED, 1);
JS_SetGCParameter(cx, JSGC_SLICE_TIME_BUDGET_MS, 10); /* ms */
- // JS_SetGCParameter(cx, JSGC_HIGH_FREQUENCY_TIME_LIMIT, 1000); /* ms */
- // JS_SetGCParameter(cx, JSGC_LOW_FREQUENCY_HEAP_GROWTH, 150);
- // JS_SetGCParameter(cx, JSGC_HIGH_FREQUENCY_HEAP_GROWTH_MIN, 150);
- // JS_SetGCParameter(cx, JSGC_HIGH_FREQUENCY_HEAP_GROWTH_MAX, 300);
- // JS_SetGCParameter(cx, JSGC_HIGH_FREQUENCY_LOW_LIMIT, 100);
- // JS_SetGCParameter(cx, JSGC_HIGH_FREQUENCY_HIGH_LIMIT, 500);
- // JS_SetGCParameter(cx, JSGC_ALLOCATION_THRESHOLD, 30);
- // JS_SetGCParameter(cx, JSGC_DECOMMIT_THRESHOLD, 32);
/* set ourselves as the private data */
JS_SetContextPrivate(cx, uninitialized_gjs);
diff --git a/gjs/jsapi-util.cpp b/gjs/jsapi-util.cpp
index 2db43e7ac..6f46ca2f5 100644
--- a/gjs/jsapi-util.cpp
+++ b/gjs/jsapi-util.cpp
@@ -595,7 +595,7 @@ gjs_gc_if_needed (JSContext *context)
uint64_t rss_usize = rss_size;
if (rss_usize > linux_rss_trigger) {
linux_rss_trigger = MIN(G_MAXUINT32, rss_usize * 1.25);
- JS::NonIncrementalGC(context, GC_SHRINK,
+ JS::NonIncrementalGC(context, JS::GCOptions::Shrink,
Gjs::GCReason::LINUX_RSS_TRIGGER);
} else if (rss_size < (0.75 * linux_rss_trigger)) {
/* If we've shrunk by 75%, lower the trigger */
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]