summaryrefslogtreecommitdiff
path: root/chromium/v8/src/heap/heap.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/v8/src/heap/heap.h')
-rw-r--r--chromium/v8/src/heap/heap.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/chromium/v8/src/heap/heap.h b/chromium/v8/src/heap/heap.h
index 6fb429ae7d6..4c9e3ad1448 100644
--- a/chromium/v8/src/heap/heap.h
+++ b/chromium/v8/src/heap/heap.h
@@ -837,6 +837,21 @@ class Heap {
// incremental steps.
void StartIdleIncrementalMarking();
+ // Starts incremental marking assuming incremental marking is currently
+ // stopped.
+ void StartIncrementalMarking(int gc_flags,
+ const GCCallbackFlags gc_callback_flags,
+ const char* reason = nullptr);
+
+ // Performs incremental marking steps of step_size_in_bytes as long as
+ // deadline_ins_ms is not reached. step_size_in_bytes can be 0 to compute
+ // an estimate increment. Returns the remaining time that cannot be used
+ // for incremental marking anymore because a single step would exceed the
+ // deadline.
+ double AdvanceIncrementalMarking(
+ intptr_t step_size_in_bytes, double deadline_in_ms,
+ IncrementalMarking::StepActions step_actions);
+
inline void increment_scan_on_scavenge_pages() {
scan_on_scavenge_pages_++;
if (FLAG_gc_verbose) {
@@ -2267,6 +2282,8 @@ class Heap {
bool HasLowYoungGenerationAllocationRate();
bool HasLowOldGenerationAllocationRate();
+ double YoungGenerationMutatorUtilization();
+ double OldGenerationMutatorUtilization();
void ReduceNewSpaceSize();