More stuff

This commit is contained in:
Nils O. Selåsdal
2026-06-05 01:11:49 +02:00
parent d4bf858cbb
commit fc7253e412
9 changed files with 119 additions and 25 deletions
+41
View File
@@ -0,0 +1,41 @@
#include "base_core.h"
#include "arena.h"
#include <stdio.h>
#include <stdlib.h>
void arena_dump(const Arena *arena)
{
arena = arena->current;
puts("@@@@@@@@@@");
while (arena) {
puts("-----Arena-----");
printf("base: %p\n", arena->base);
printf("size: %u\n", arena->size);
printf("pos: %u\n", arena->pos);
printf("prev: %p\n", arena->prev);
puts("-----Arena end-");
arena = arena->prev;
}
}
int main(int argc, char *argv[])
{
ArenaParams arena_params = {};
arena_params.size = 1024+ARENA_HEADER_SZ;
Arena *arena = arena_alloc_(&arena_params);
arena_dump(arena);
char *ptr = arena_push(arena, 1024, 1);
MemoryZero(ptr, 1024);
printf("Allocated ptr %p\n", ptr);
arena_dump(arena);
ptr = arena_push(arena, 512, 1);
MemoryZero(ptr, 512);
printf("Allocated ptr %p\n", ptr);
arena_dump(arena);
ptr = arena_push(arena, 1, 1);
MemoryZero(ptr, 1);
printf("Allocated ptr %p\n", ptr);
arena_dump(arena);
arena_free(arena);
}