Mirai's Miscellaneous Misadventures
M32 / core / malloc.c
1
2
3
4#include <stdlib.h>
5
6#include <mimimi/allocators.h>
7#include <mimimi/malloc.h>
8
9static void *mimimi_malloc_allocate(void *data, unsigned int size)
10{
11 (void) data;
12 void *value = malloc(size);
13 if (value == NULL) exit(1);
14 return value;
15}
16
17static void *mimimi_malloc_reallocate(void *data, void *value, unsigned int size)
18{
19 (void) data;
20 value = realloc(value, size);
21 if (value == NULL) exit(1);
22 return value;
23}
24
25static void mimimi_malloc_deallocate(void *data, void *value)
26{
27 (void) data;
28 free(value);
29}
30
31static struct mimimi_allocator mimimi_malloc_value = {&mimimi_malloc_allocate, &mimimi_malloc_reallocate, &mimimi_malloc_deallocate, NULL, NULL};
32
33struct mimimi_allocator *mimimi_malloc = &mimimi_malloc_value;