Lines Matching refs:base

94 	addr_t			base;
150 void * base;
250 printf("\tarea %p: area: %" B_PRId32 "; base: 0x%08lx; size: %" B_PRIuSIZE "; "
252 area, area->area, area->base, area->size, area->page_count,
295 addr_t base = area->base + i * heap->page_size;
302 j++, base += elementSize) {
307 if ((addr_t)temp == base) {
316 info = (heap_leak_check_info *)(base + elementSize
324 base, info->size);
342 info = (heap_leak_check_info *)(base + pageCount
350 base, info->size);
390 addr_t base = area->base + i * heap->page_size;
397 j++, base += elementSize) {
402 if ((addr_t)temp == base) {
411 info = (heap_leak_check_info *)(base + elementSize
421 addr_t wallAddress = base + info->size;
427 " value: 0x%08lx\n", base, info->size,
442 info = (heap_leak_check_info *)(base + pageCount
454 addr_t wallAddress = base + info->size;
459 " value: 0x%08lx\n", base, info->size,
559 if (lastArea != NULL && lastArea->base < area->base)
560 panic("base ordering of all_areas list broken\n");
618 addr_t pageBase = area->base + page->index * heap->page_size;
657 heap_add_area(heap_allocator *heap, area_id areaID, addr_t base, size_t size)
659 heap_area *area = (heap_area *)base;
662 base += sizeof(heap_area);
667 area->page_table = (heap_page *)base;
668 base += pageTableSize;
672 area->base = ROUNDUP(base, B_PAGE_SIZE);
712 // insert this area in the all_areas list so it stays ordered by base
713 if (heap->all_areas == NULL || heap->all_areas->base < area->base) {
718 while (insert->all_next && insert->all_next->base > area->base)
783 heap_create_allocator(const char *name, addr_t base, size_t size,
786 heap_allocator *heap = (heap_allocator *)base;
787 base += sizeof(heap_allocator);
794 heap->bins = (heap_bin *)base;
817 base += heap->bin_count * sizeof(heap_bin);
823 heap_add_area(heap, -1, base, size);
958 firstValid = (ROUNDUP(area->base, alignment) - area->base)
1038 addr_t address = firstPage->area->base + firstPage->index * heap->page_size;
1094 address = (void *)(page->area->base + page->index * heap->page_size
1184 // since the all_areas list is ordered by base with the biggest
1185 // base at the top, we need only find the first area with a base
1187 if (area->base <= (addr_t)address) {
1188 if ((addr_t)address >= area->base + area->size) {
1208 heap_page *page = &area->page_table[((addr_t)address - area->base)
1220 addr_t pageBase = area->base + page->index * heap->page_size;
1226 " for page base %p and element size %" B_PRIu32 "\n", address,
1309 panic("free(): large allocation address %p not on page base %p\n",
1397 // since the all_areas list is ordered by base with the biggest
1398 // base at the top, we need only find the first area with a base
1401 if (area->base <= (addr_t)address) {
1402 if ((addr_t)address >= area->base + area->size) {
1422 heap_page *page = &area->page_table[((addr_t)address - area->base)
1515 // since the all_areas list is ordered by base with the biggest
1516 // base at the top, we need only find the first area with a base
1518 if (area->base <= (addr_t)address) {
1519 if ((addr_t)address >= area->base + area->size) {
1537 heap_page *page = &area->page_table[((addr_t)address - area->base)
1547 addr_t pageBase = area->base + page->index * heap->page_size;
1553 " allocation boundary for page base %p and element size %" B_PRIu32 "\n",
1573 " page base %p\n", address, (void *)pageBase);
1749 info->base = address;
1787 && info->size == areaInfo.size && info->base == areaInfo.address
1807 // This will locate the heap base at 384 MB and reserve the next 1152 MB
1820 addr_t base = (addr_t)heapBase;
1824 sHeaps[i] = heap_create_allocator(sHeapClasses[i].name, base, partSize,
1826 base += partSize;
1864 info->base = address;
1942 && info->size == areaInfo.size && info->base == areaInfo.address
1984 && info->size == areaInfo.size && info->base == areaInfo.address
2006 - (addr_t)info->base);