-
Pierre Langlois authored
When inlined allocations are disabled, the space->limit() does not point to the end of the current page. Instead, it points to the current allocation pointer so is the same as space->top(). See how the limit is computed, if heap()->inline_allocation_disabled(), then the limit will be the same as the requested allocation area: ``` Address SpaceWithLinearArea::ComputeLimit(Address start, Address end, size_t min_size) { DCHECK_GE(end - start, min_size); if (heap()->inline_allocation_disabled()) { // Fit the requested area exactly. return start + min_size; } else if (SupportsInlineAllocation() && AllocationObserversActive()) { // ... } else { // The entire node can be used as the linear allocation area. return end; } } ``` If we want to simulate filling up a whole page in the new space, we can instead look at the ToSpace's page_high() which will be the end of the current page in which we're allocating. Bug: v8:9906 Change-Id: I81113d151bc083cd22d17ea1a4fbae7fef9dff6d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1886914Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Pierre Langlois <pierre.langlois@arm.com> Cr-Commit-Position: refs/heads/master@{#64612}
74565bf3