0

heap: Add chrome feature for --separate-gc-phases

Bug: 365694581
Change-Id: Ic458199ba7872aa55f0272e08c6eafade3ecd105
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5850976
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Commit-Queue: Omer Katz <omerkatz@chromium.org>
Auto-Submit: Omer Katz <omerkatz@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1353421}
This commit is contained in:
Omer Katz
2024-09-10 16:50:04 +00:00
committed by Chromium LUCI CQ
parent b1aeb6a105
commit bbffc26a8a
4 changed files with 10 additions and 2 deletions
android_webview/java/src/org/chromium/android_webview/common
gin

@ -771,6 +771,7 @@ public final class ProductionSupportedFlagList {
Flag.baseFeature("V8MemoryReducer"),
Flag.baseFeature("V8MinorMS"),
Flag.baseFeature("V8ScavengerHigherCapacity"),
Flag.baseFeature("V8SeparateGCPhases"),
Flag.baseFeature("V8SingleThreadedGCInBackground"),
Flag.baseFeature("V8SingleThreadedGCInBackgroundNoIncrementalMarking"),
Flag.baseFeature("V8SingleThreadedGCInBackgroundParallelPause"),

@ -131,6 +131,10 @@ BASE_FEATURE(kV8ScavengerHigherCapacity,
const base::FeatureParam<int> kV8ScavengerMaxCapacity{
&kV8ScavengerHigherCapacity, "V8ScavengerMaxCapacity", 16};
BASE_FEATURE(kV8SeparateGCPhases,
("V8SeparateGCPhases"),
kFeatureDefaultStateControlledByV8);
// Enables Sparkplug compiler. Note that this only sets the V8 flag when
// manually overridden; otherwise it defers to whatever the V8 default is.
BASE_FEATURE(kV8Sparkplug, ("V8Sparkplug"), kFeatureDefaultStateControlledByV8);

@ -49,8 +49,6 @@ GIN_EXPORT BASE_DECLARE_FEATURE(kV8Maglev);
GIN_EXPORT BASE_DECLARE_FEATURE(kV8ConcurrentMaglevHighPriorityThreads);
GIN_EXPORT BASE_DECLARE_FEATURE(kV8MemoryReducer);
GIN_EXPORT extern const base::FeatureParam<int> kV8MemoryReducerGCCount;
GIN_EXPORT BASE_DECLARE_FEATURE(kV8ScavengerHigherCapacity);
GIN_EXPORT extern const base::FeatureParam<int> kV8ScavengerMaxCapacity;
GIN_EXPORT BASE_DECLARE_FEATURE(kV8MinorMS);
GIN_EXPORT BASE_DECLARE_FEATURE(kV8MegaDomIC);
GIN_EXPORT BASE_DECLARE_FEATURE(kV8NoReclaimUnmodifiedWrappers);
@ -58,6 +56,9 @@ GIN_EXPORT BASE_DECLARE_FEATURE(kV8OffThreadFinalization);
GIN_EXPORT BASE_DECLARE_FEATURE(kV8OptimizeJavascript);
GIN_EXPORT BASE_DECLARE_FEATURE(kV8PerContextMarkingWorklist);
GIN_EXPORT BASE_DECLARE_FEATURE(kV8ReduceConcurrentMarkingTasks);
GIN_EXPORT BASE_DECLARE_FEATURE(kV8ScavengerHigherCapacity);
GIN_EXPORT extern const base::FeatureParam<int> kV8ScavengerMaxCapacity;
GIN_EXPORT BASE_DECLARE_FEATURE(kV8SeparateGCPhases);
GIN_EXPORT BASE_DECLARE_FEATURE(kV8ShortBuiltinCalls);
GIN_EXPORT BASE_DECLARE_FEATURE(kV8SideStepTransitions);
GIN_EXPORT BASE_DECLARE_FEATURE(kV8SingleThreadedGCInBackground);

@ -294,6 +294,8 @@ void SetFlags(IsolateHolder::ScriptMode mode,
SetV8FlagsFormatted("--scavenger-max-new-space-capacity-mb=%i",
features::kV8ScavengerMaxCapacity.Get());
}
SetV8FlagsIfOverridden(features::kV8SeparateGCPhases, "--separate-gc-phases",
"--no-separate-gc-phases");
SetV8FlagsIfOverridden(features::kV8Sparkplug, "--sparkplug",
"--no-sparkplug");
SetV8FlagsIfOverridden(features::kV8Turbofan, "--turbofan", "--no-turbofan");