summaryrefslogtreecommitdiff
path: root/chromium/gin
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2019-08-30 10:22:43 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2019-08-30 12:36:28 +0000
commit271a6c3487a14599023a9106329505597638d793 (patch)
treee040d58ffc86c1480b79ca8528020ca9ec919bf8 /chromium/gin
parent7b2ffa587235a47d4094787d72f38102089f402a (diff)
downloadqtwebengine-chromium-271a6c3487a14599023a9106329505597638d793.tar.gz
BASELINE: Update Chromium to 77.0.3865.59
Change-Id: I1e89a5f3b009a9519a6705102ad65c92fe736f21 Reviewed-by: Michael BrĂ¼ning <michael.bruning@qt.io>
Diffstat (limited to 'chromium/gin')
-rw-r--r--chromium/gin/BUILD.gn1
-rw-r--r--chromium/gin/gin_features.cc14
-rw-r--r--chromium/gin/gin_features.h3
-rw-r--r--chromium/gin/v8_initializer.cc21
4 files changed, 37 insertions, 2 deletions
diff --git a/chromium/gin/BUILD.gn b/chromium/gin/BUILD.gn
index c0b70402974..e6ff98edda3 100644
--- a/chromium/gin/BUILD.gn
+++ b/chromium/gin/BUILD.gn
@@ -2,7 +2,6 @@
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
-import("//build/buildflag_header.gni")
import("//build/config/allocator.gni")
import("//testing/test.gni")
import("//tools/v8_context_snapshot/v8_context_snapshot.gni")
diff --git a/chromium/gin/gin_features.cc b/chromium/gin/gin_features.cc
index 3e6f1cc2fe2..18fbecbb0e5 100644
--- a/chromium/gin/gin_features.cc
+++ b/chromium/gin/gin_features.cc
@@ -14,12 +14,24 @@ const base::Feature kV8OptimizeJavascript{"V8OptimizeJavascript",
const base::Feature kV8FlushBytecode{"V8FlushBytecode",
base::FEATURE_ENABLED_BY_DEFAULT};
+// Enables lazy feedback allocation in V8.
+const base::Feature kV8LazyFeedbackAllocation{"V8LazyFeedbackAllocation",
+ base::FEATURE_ENABLED_BY_DEFAULT};
+
// Enables memory reducer for small heaps in V8.
const base::Feature kV8MemoryReducerForSmallHeaps{
"V8MemoryReducerForSmallHeaps", base::FEATURE_ENABLED_BY_DEFAULT};
// Increase V8 heap size to 4GB if the physical memory is bigger than 16 GB.
const base::Feature kV8HugeMaxOldGenerationSize{
- "V8HugeMaxOldGenerationSize", base::FEATURE_DISABLED_BY_DEFAULT};
+ "V8HugeMaxOldGenerationSize", base::FEATURE_ENABLED_BY_DEFAULT};
+
+// Enables new background GC scheduling heuristics.
+const base::Feature kV8GCBackgroundSchedule{"V8GCBackgroundSchedule",
+ base::FEATURE_DISABLED_BY_DEFAULT};
+
+// Perform less compaction in non-memory reducing mode.
+const base::Feature kV8GCLessCompaction{"V8GCLessCompaction",
+ base::FEATURE_DISABLED_BY_DEFAULT};
} // namespace features
diff --git a/chromium/gin/gin_features.h b/chromium/gin/gin_features.h
index f5f18b3ab25..2d5652f7008 100644
--- a/chromium/gin/gin_features.h
+++ b/chromium/gin/gin_features.h
@@ -12,8 +12,11 @@ namespace features {
GIN_EXPORT extern const base::Feature kV8OptimizeJavascript;
GIN_EXPORT extern const base::Feature kV8FlushBytecode;
+GIN_EXPORT extern const base::Feature kV8LazyFeedbackAllocation;
GIN_EXPORT extern const base::Feature kV8MemoryReducerForSmallHeaps;
GIN_EXPORT extern const base::Feature kV8HugeMaxOldGenerationSize;
+GIN_EXPORT extern const base::Feature kV8GCBackgroundSchedule;
+GIN_EXPORT extern const base::Feature kV8GCLessCompaction;
} // namespace features
diff --git a/chromium/gin/v8_initializer.cc b/chromium/gin/v8_initializer.cc
index 770f3cb5299..aab46a000c5 100644
--- a/chromium/gin/v8_initializer.cc
+++ b/chromium/gin/v8_initializer.cc
@@ -225,6 +225,13 @@ void V8Initializer::Initialize(IsolateHolder::ScriptMode mode) {
sizeof(no_flush_bytecode) - 1);
}
+ if (!base::FeatureList::IsEnabled(features::kV8LazyFeedbackAllocation)) {
+ static const char no_lazy_feedback_allocation[] =
+ "--no-lazy-feedback-allocation";
+ v8::V8::SetFlagsFromString(no_lazy_feedback_allocation,
+ sizeof(no_lazy_feedback_allocation) - 1);
+ }
+
if (!base::FeatureList::IsEnabled(features::kV8MemoryReducerForSmallHeaps)) {
static const char no_memory_reducer[] =
"--no-memory-reducer-for-small-heaps";
@@ -239,6 +246,20 @@ void V8Initializer::Initialize(IsolateHolder::ScriptMode mode) {
sizeof(huge_max_old_generation_size) - 1);
}
+ if (base::FeatureList::IsEnabled(features::kV8GCBackgroundSchedule)) {
+ static const char gc_experiment_background_schedule[] =
+ "--gc_experiment_background_schedule";
+ v8::V8::SetFlagsFromString(gc_experiment_background_schedule,
+ sizeof(gc_experiment_background_schedule) - 1);
+ }
+
+ if (base::FeatureList::IsEnabled(features::kV8GCLessCompaction)) {
+ static const char gc_experiment_less_compaction[] =
+ "--gc_experiment_less_compaction";
+ v8::V8::SetFlagsFromString(gc_experiment_less_compaction,
+ sizeof(gc_experiment_less_compaction) - 1);
+ }
+
if (IsolateHolder::kStrictMode == mode) {
static const char use_strict[] = "--use_strict";
v8::V8::SetFlagsFromString(use_strict, sizeof(use_strict) - 1);