19 return aoc.observer_ == observer;
33 observer_next_counter));
41 std::min(
static_cast<intptr_t
>(missing_bytes), step_size);
48 return aoc.observer_ == observer;
68 step_size = step_size ? std::min(step_size, left_in_step) : left_in_step;
84 size_t aligned_object_size) {
89 bool step_run =
false;
104 size_t observer_step_size = aoc.observer_->GetNextStepSize();
113 step_size = step_size ? std::min(step_size, left_in_step) : left_in_step;
121 size_t observer_step_size = aoc.observer_->GetNextStepSize();
127 step_size = std::min(step_size, aligned_object_size + observer_step_size);
138 return pending_removed_.count(aoc.observer_) != 0;
147 step_size = step_size ? std::min(step_size, left_in_step) : left_in_step;
164 heap->allocator()->PauseAllocationObservers();
std::unordered_set< AllocationObserver * > pending_removed_
V8_EXPORT_PRIVATE void AdvanceAllocationObservers(size_t allocated)
V8_EXPORT_PRIVATE void RemoveAllocationObserver(AllocationObserver *observer)
std::vector< AllocationObserverCounter > pending_added_
std::vector< AllocationObserverCounter > observers_
V8_EXPORT_PRIVATE void AddAllocationObserver(AllocationObserver *observer)
V8_EXPORT_PRIVATE void InvokeAllocationObservers(Address soon_object, size_t object_size, size_t aligned_object_size)
virtual intptr_t GetNextStepSize()
void ResumeAllocationObservers()
int pause_allocation_observers_depth_
HeapAllocator * allocator()
#define DCHECK_NE(v1, v2)
#define DCHECK_GE(v1, v2)
#define DCHECK(condition)
#define DCHECK_LT(v1, v2)
#define DCHECK_EQ(v1, v2)
#define DCHECK_GT(v1, v2)