Lines Matching refs:page

5 #include "src/heap/cppgc/heap-page.h"
18 #include "src/heap/cppgc/page-memory.h"
48 void BasePage::Destroy(BasePage* page) {
49 if (page->discarded_memory()) {
50 page->space()
54 ->DecrementDiscardedMemory(page->discarded_memory());
56 if (page->is_large()) {
57 LargePage::Destroy(LargePage::From(page));
59 NormalPage::Destroy(NormalPage::From(page));
132 // b) memory retrieved from the page pool was swept and thus is zeroed except
153 void NormalPage::Destroy(NormalPage* page) {
154 DCHECK(page);
155 const BaseSpace& space = page->space();
156 DCHECK_EQ(space.end(), std::find(space.begin(), space.end(), page));
157 page->~NormalPage();
158 PageBackend* backend = page->heap().page_backend();
159 page->heap().stats_collector()->NotifyFreedMemory(kPageSize);
160 backend->FreeNormalPageMemory(space.index(), reinterpret_cast<Address>(page));
221 // internally guaranteed alignment of large page allocations.
232 LargePage* page = new (memory) LargePage(*heap, space, size);
233 page->SynchronizedStore();
234 page->heap().stats_collector()->NotifyAllocatedMemory(allocation_size);
235 return page;
239 void LargePage::Destroy(LargePage* page) {
240 DCHECK(page);
242 const BaseSpace& space = page->space();
248 DCHECK_EQ(space.end(), std::find(space.begin(), space.end(), page));
251 page->~LargePage();
252 PageBackend* backend = page->heap().page_backend();
253 page->heap().stats_collector()->NotifyFreedMemory(
254 AllocationSize(page->PayloadSize()));
255 backend->FreeLargePageMemory(reinterpret_cast<Address>(page));