Minor updates

This commit is contained in:
Nils O. Selåsdal
2026-06-07 20:07:58 +02:00
parent c31aff806d
commit 83805e64c0
6 changed files with 63 additions and 27 deletions
+3 -17
View File
@@ -13,13 +13,8 @@ Arena *arena_alloc(const ArenaParams *params)
Assert(params->size > ARENA_HEADER_SZ);
Assert(params->size < (U32_Max - ARENA_HEADER_SZ - 1));
// Note: only backend now is malloc
void *base;
if (params->flags & ArenaFlag_UseMalloc){
base = platform_malloc(params->size);
} else {
base = memory_allocate(params->size);
}
base = memory_allocate(params->size);
Assert(base != NULL);
ASAN_UNPOISON_MEMORY_REGION(base, ARENA_HEADER_SZ);
@@ -43,11 +38,7 @@ void arena_free(Arena *arena)
while (it != NULL) {
Arena *prev = it->prev;
if (it->flags & ArenaFlag_UseMalloc){
platform_free(it->base);
} else {
memory_free(it->base, it->size);
}
memory_free(it->base, it->size);
it = prev;
}
}
@@ -98,12 +89,7 @@ void arena_pop_to(Arena *arena, U32 abs_pos)
if (current->base_pos >= abs_pos) {
ASAN_UNPOISON_MEMORY_REGION(current->base, current->size); // needed as we use malloc
if (current->flags & ArenaFlag_UseMalloc){
platform_free(current->base);
} else {
memory_free(current->base, current->size);
}
memory_free(current->base, current->size);
arena->current = prev;
} else {
U32 new_pos = abs_pos - current->base_pos;