Index: src/heap/heap.cc |
diff --git a/src/heap/heap.cc b/src/heap/heap.cc |
index fa327641250cd51d24d01f822ff04e641a758ab4..5dbcff9e7342bdc0c6cb88d454ae5ef2a4d0ec6e 100644 |
--- a/src/heap/heap.cc |
+++ b/src/heap/heap.cc |
@@ -4408,7 +4408,7 @@ void Heap::IdleMarkCompact(const char* message) { |
} |
-void Heap::TryFinalizeIdleIncrementalMarking( |
+bool Heap::TryFinalizeIdleIncrementalMarking( |
double idle_time_in_ms, size_t size_of_objects, |
size_t final_incremental_mark_compact_speed_in_bytes_per_ms) { |
if (incremental_marking()->IsComplete() || |
@@ -4417,7 +4417,9 @@ void Heap::TryFinalizeIdleIncrementalMarking( |
static_cast<size_t>(idle_time_in_ms), size_of_objects, |
final_incremental_mark_compact_speed_in_bytes_per_ms))) { |
CollectAllGarbage(kNoGCFlags, "idle notification: finalize incremental"); |
+ return true; |
} |
+ return false; |
} |
@@ -4502,7 +4504,7 @@ bool Heap::IdleNotification(double deadline_in_seconds) { |
!incremental_marking()->IsComplete() && |
!mark_compact_collector_.marking_deque()->IsEmpty()); |
if (remaining_idle_time_in_ms > 0.0) { |
- TryFinalizeIdleIncrementalMarking( |
+ action.additional_work = TryFinalizeIdleIncrementalMarking( |
remaining_idle_time_in_ms, heap_state.size_of_objects, |
heap_state.final_incremental_mark_compact_speed_in_bytes_per_ms); |
} |