Rewrite everything

This commit is contained in:
Ole Morud
2023-06-03 16:04:24 +02:00
parent f8c0db9937
commit c71788ba72
6 changed files with 64 additions and 101 deletions

View File

@@ -1,9 +0,0 @@
#ifndef ALLOC_BACKEND_H
#define ALLOC_BACKEND_H
#include <stddef.h>
void* call_alloc_backend(size_t size);
#endif

View File

@@ -4,16 +4,17 @@
#include <stddef.h> // ptrdiff_t
typedef unsigned char byte_t;
typedef struct arena {
void *begin,
*next,
*prev;
size_t cap;
size_t next, prev, cap;
void* data;
} __attribute__((aligned(sizeof(void*)))) arena_t;
arena_t* arena_new();
arena_t arena_new();
void arena_reset(arena_t* a);
void* arena_alloc(arena_t* a, size_t len);
void* arena_calloc(arena_t* a, size_t nmemb, size_t size);
void* arena_realloc_tail(arena_t* a, size_t len);
#endif