From f87f7b4f0aaccc65d03ccee5bb11915ead6fb0e1 Mon Sep 17 00:00:00 2001 From: Raymaekers Luca Date: Sun, 27 Apr 2025 12:52:06 +0200 Subject: First pass at preparing for Github --- arena.h | 53 ----------------------------------------------------- 1 file changed, 53 deletions(-) delete mode 100644 arena.h (limited to 'arena.h') diff --git a/arena.h b/arena.h deleted file mode 100644 index f3d21d7..0000000 --- a/arena.h +++ /dev/null @@ -1,53 +0,0 @@ -#ifndef ARENA_H -#define ARENA_H - -#include -#include -#include "types.h" - -// Arena Allocator -typedef struct { - void* addr; - u64 size; - u64 pos; -} Arena; -#define PushArray(arena, type, count) (type*)ArenaPush((arena), sizeof(type) * (count)) -#define PushArrayZero(arena, type, count) (type*)ArenaPushZero((arena), sizeof(type) * (count)) -#define PushStruct(arena, type) PushArray((arena), (type), 1) -#define PushStructZero(arena, type) PushArrayZero((arena), (type), 1) - -void ArenaAlloc(Arena* arena, u64 size); -void ArenaRelease(Arena* arena); -void* ArenaPush(Arena* arena, u64 size); - -#endif // ARENA_H - -#ifdef ARENA_IMPL - -// Returns arena in case of success, or 0 if it failed to alllocate the memory -void -ArenaAlloc(Arena* arena, u64 size) -{ - arena->addr = mmap(0, size, PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_PRIVATE, -1, 0); - Assert(arena->addr != MAP_FAILED); - arena->pos = 0; - arena->size = size; -} - -void -ArenaRelease(Arena* arena) -{ - munmap(arena->addr, arena->size); -} - -void* -ArenaPush(Arena* arena, u64 size) -{ - u8* mem; - mem = (u8*)arena->addr + arena->pos; - arena->pos += size; - Assert(arena->pos <= arena->size); - return mem; -} - -#endif // ARENA_IMPL -- cgit v1.2.3