summaryrefslogtreecommitdiff
path: root/deps/v8/src/heap/memory-reducer.cc
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/src/heap/memory-reducer.cc')
-rw-r--r--deps/v8/src/heap/memory-reducer.cc11
1 files changed, 5 insertions, 6 deletions
diff --git a/deps/v8/src/heap/memory-reducer.cc b/deps/v8/src/heap/memory-reducer.cc
index ee1009134b..f53730785a 100644
--- a/deps/v8/src/heap/memory-reducer.cc
+++ b/deps/v8/src/heap/memory-reducer.cc
@@ -47,7 +47,7 @@ void MemoryReducer::TimerTask::RunInternal() {
event.should_start_incremental_gc = is_idle || optimize_for_memory;
event.can_start_incremental_gc =
heap->incremental_marking()->IsStopped() &&
- heap->incremental_marking()->CanBeActivated();
+ (heap->incremental_marking()->CanBeActivated() || optimize_for_memory);
memory_reducer_->NotifyTimer(event);
}
@@ -118,9 +118,8 @@ void MemoryReducer::NotifyMarkCompact(const Event& event) {
}
}
-
-void MemoryReducer::NotifyContextDisposed(const Event& event) {
- DCHECK_EQ(kContextDisposed, event.type);
+void MemoryReducer::NotifyPossibleGarbage(const Event& event) {
+ DCHECK_EQ(kPossibleGarbage, event.type);
Action old_action = state_.action;
state_ = Step(state_, event);
if (old_action != kWait && state_.action == kWait) {
@@ -147,14 +146,14 @@ MemoryReducer::State MemoryReducer::Step(const State& state,
if (event.type == kTimer) {
return state;
} else {
- DCHECK(event.type == kContextDisposed || event.type == kMarkCompact);
+ DCHECK(event.type == kPossibleGarbage || event.type == kMarkCompact);
return State(
kWait, 0, event.time_ms + kLongDelayMs,
event.type == kMarkCompact ? event.time_ms : state.last_gc_time_ms);
}
case kWait:
switch (event.type) {
- case kContextDisposed:
+ case kPossibleGarbage:
return state;
case kTimer:
if (state.started_gcs >= kMaxNumberOfGCs) {