Commit 6dce5c66 authored by Michael Lippautz's avatar Michael Lippautz Committed by Commit Bot

[heap] Use all freelist sizes in LocalAllocator

The Scavenger is the only consumer of free list entries besides MC
evacuation and pretenured allocations. Make use of all size classes for
allocation.

Bug: chromium:738865
Change-Id: Ieb62c01b41f2aa62222efac91dde4dce2127ff70
Reviewed-on: https://chromium-review.googlesource.com/580409Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#46812}
parent e605a14e
...@@ -1479,6 +1479,10 @@ Page* PagedSpace::RemovePageSafe(int size_in_bytes) { ...@@ -1479,6 +1479,10 @@ Page* PagedSpace::RemovePageSafe(int size_in_bytes) {
page = free_list()->GetPageForCategoryType(kMedium); page = free_list()->GetPageForCategoryType(kMedium);
if (!page && static_cast<int>(kSmall) >= minimum_category) if (!page && static_cast<int>(kSmall) >= minimum_category)
page = free_list()->GetPageForCategoryType(kSmall); page = free_list()->GetPageForCategoryType(kSmall);
if (!page && static_cast<int>(kTiny) >= minimum_category)
page = free_list()->GetPageForCategoryType(kTiny);
if (!page && static_cast<int>(kTiniest) >= minimum_category)
page = free_list()->GetPageForCategoryType(kTiniest);
if (!page) return nullptr; if (!page) return nullptr;
AccountUncommitted(page->size()); AccountUncommitted(page->size());
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment