Lines Matching defs:arena
1454 alloc->arena = hole->arena;
1469 /* Allocate a new shader arena. */
1470 struct radv_shader_arena *arena = calloc(1, sizeof(struct radv_shader_arena));
1472 if (!arena)
1484 RADV_BO_PRIORITY_SHADER, 0, &arena->bo);
1488 list_inithead(&arena->entries);
1490 arena->ptr = (char *)device->ws->buffer_map(arena->bo);
1491 if (!arena->ptr)
1498 list_addtail(&alloc->list, &arena->entries);
1501 alloc->arena = arena;
1506 hole->arena = arena;
1510 list_addtail(&hole->list, &arena->entries);
1515 list_addtail(&arena->list, &device->shader_arenas);
1524 if (arena && arena->bo)
1525 device->ws->buffer_destroy(device->ws, arena->bo);
1526 free(arena);
1531 get_hole(struct radv_shader_arena *arena, struct list_head *head)
1533 if (head == &arena->entries)
1545 union radv_shader_arena_block *hole_prev = get_hole(alloc->arena, alloc->list.prev);
1546 union radv_shader_arena_block *hole_next = get_hole(alloc->arena, alloc->list.next);
1574 struct radv_shader_arena *arena = hole->arena;
1577 device->ws->buffer_destroy(device->ws, arena->bo);
1578 list_del(&arena->list);
1579 free(arena);
1606 list_for_each_entry_safe(struct radv_shader_arena, arena, &device->shader_arenas, list)
1608 device->ws->buffer_destroy(device->ws, arena->bo);
1609 free(arena);
2335 trap->bo = trap->alloc->arena->bo;
2336 char *dest_ptr = trap->alloc->arena->ptr + trap->alloc->offset;
2350 return radv_buffer_get_va(trap->alloc->arena->bo) + trap->alloc->offset;
2377 shader_part->bo = shader_part->alloc->arena->bo;
2378 char *dest_ptr = shader_part->alloc->arena->ptr + shader_part->alloc->offset;
2571 list_for_each_entry(struct radv_shader_arena, arena, &device->shader_arenas, list)
2577 list_for_each_entry(union radv_shader_arena_block, block, &arena->entries, list)
2582 uint64_t start = radv_buffer_get_va(block->arena->bo) + block->offset;