Home | History | Annotate | Download | only in heap

Lines Matching refs:page

22   // Given a page and a slot in that page, this function adds the slot to the
24 static void Insert(Page* page, Address slot_addr) {
25 DCHECK(page->Contains(slot_addr));
26 SlotSet* slot_set = GetSlotSet(page);
28 slot_set = AllocateSlotSet(page);
30 uintptr_t offset = slot_addr - page->address();
31 slot_set[offset / Page::kPageSize].Insert(offset % Page::kPageSize);
34 // Given a page and a slot in that page, this function removes the slot from
37 static void Remove(Page* page, Address slot_addr) {
38 DCHECK(page->Contains(slot_addr));
39 SlotSet* slot_set = GetSlotSet(page);
41 uintptr_t offset = slot_addr - page->address();
42 slot_set[offset / Page::kPageSize].Remove(offset % Page::kPageSize);
46 // Given a page and a range of slots in that page, this function removes the
48 static void RemoveRange(Page* page, Address start, Address end) {
49 SlotSet* slot_set = GetSlotSet(page);
51 uintptr_t start_offset = start - page->address();
52 uintptr_t end_offset = end - page->address();
54 DCHECK_LE(end_offset, static_cast<uintptr_t>(Page::kPageSize));
90 size_t pages = (chunk->size() + Page::kPageSize - 1) / Page::kPageSize;
92 for (size_t page = 0; page < pages; page++) {
93 new_count += slots[page].Iterate(callback);
101 // Given a page and a typed slot in that page, this function adds the slot
103 static void InsertTyped(Page* page, Address host_addr, SlotType slot_type,
105 TypedSlotSet* slot_set = GetTypedSlotSet(page);
107 AllocateTypedSlotSet(page);
108 slot_set = GetTypedSlotSet(page);
111 host_addr = page->address();
113 uintptr_t offset = slot_addr - page->address();
114 uintptr_t host_offset = host_addr - page->address();
121 // Given a page and a range of typed slots in that page, this function removes
123 static void RemoveRangeTyped(Page* page, Address start, Address end) {
124 TypedSlotSet* slots = GetTypedSlotSet(page);