Index: src/heap/heap.cc |
diff --git a/src/heap/heap.cc b/src/heap/heap.cc |
index 2ba75d0f27c6b40eeaec90ca3c2e25c2f0a95cb1..b9ead9bfddc33befbb502d016aa3b5c8e88ddabf 100644 |
--- a/src/heap/heap.cc |
+++ b/src/heap/heap.cc |
@@ -140,6 +140,7 @@ Heap::Heap() |
gc_count_at_last_idle_gc_(0), |
full_codegen_bytes_generated_(0), |
crankshaft_codegen_bytes_generated_(0), |
+ new_space_allocation_counter_(0), |
gcs_since_last_deopt_(0), |
allocation_sites_scratchpad_length_(0), |
promotion_queue_(this), |
@@ -460,6 +461,7 @@ void Heap::GarbageCollectionPrologue() { |
maximum_size_scavenges_ = 0; |
} |
CheckNewSpaceExpansionCriteria(); |
+ UpdateNewSpaceAllocationCounter(); |
} |
@@ -4631,6 +4633,7 @@ bool Heap::IdleNotification(double deadline_in_seconds) { |
intptr_t limit = old_generation_allocation_limit_; |
if (is_long_idle_notification) { |
limit = idle_old_generation_allocation_limit_; |
+ tracer()->SampleNewSpaceAllocation(start_ms, NewSpaceAllocationCounter()); |
} |
heap_state.can_start_incremental_marking = |
@@ -4653,8 +4656,7 @@ bool Heap::IdleNotification(double deadline_in_seconds) { |
heap_state.used_new_space_size = new_space_.Size(); |
heap_state.new_space_capacity = new_space_.Capacity(); |
heap_state.new_space_allocation_throughput_in_bytes_per_ms = |
- static_cast<size_t>( |
- tracer()->NewSpaceAllocationThroughputInBytesPerMillisecond()); |
+ tracer()->NewSpaceAllocationThroughputInBytesPerMillisecond(); |
GCIdleTimeAction action = |
gc_idle_time_handler_.Compute(idle_time_in_ms, heap_state); |