Commit Graph

29 Commits

Author SHA1 Message Date
e206b4f4a6 Remove Allocator functions from Arena 2024-04-24 23:40:10 +01:00
05bfa73509 Revert "Simplify Arena allocator"
This reverts commit d4313fb8e4.
2024-04-24 23:18:19 +01:00
d4313fb8e4 Simplify Arena allocator 2024-04-24 23:10:55 +01:00
92db9206cc Remove complicated memory abstractions 2024-04-24 22:51:42 +01:00
6195b521f5 Set minimum capacity for arena 2024-04-21 23:59:00 +01:00
39c88505bd Fix bug with libc allocator where memory was set to 0 on reallocation 2024-03-31 16:58:38 +01:00
970c588d66 Pass const Arena* to Allocator constuctor instead of Arena* 2024-03-25 07:52:49 +00:00
Abdelrahman Said
efe8a104de Add allocator functions 2024-03-24 21:06:41 +00:00
Abdelrahman Said
6f799c4330 Remove alloc_obj and pass double pointer to free function 2024-03-24 21:05:32 +00:00
Abdelrahman Said
8a58a1cc48 Implement Allocator wrapper for memory context 2024-03-24 20:30:14 +00:00
Abdelrahman Said
03d2a59948 Implement Allocator wrapper for Arena 2024-03-24 20:25:51 +00:00
Abdelrahman Said
5b8e9f8be6 Wrap libc memory functions in Allocator interface 2024-03-24 19:25:07 +00:00
Abdelrahman Said
7039b5437a Implement memory context realloc function 2024-03-24 19:24:36 +00:00
Abdelrahman Said
ca36e0dc35 Fix bug in the function that searches for the allocation header 2024-03-24 17:24:33 +00:00
Abdelrahman Said
3fdd897291 Implement realloc function for Arena 2024-03-24 14:57:21 +00:00
Abdelrahman Said
08703b465c Add arena allocation header 2024-03-24 13:55:13 +00:00
Abdelrahman Said
49ce26a6c2 Switch to using calloc instead of malloc 2024-03-24 11:25:52 +00:00
Abdelrahman Said
0c07437ef2 Implement memory context with main and temp arenas 2024-03-24 07:59:46 +00:00
Abdelrahman Said
063bc03974 Fix bug with clearing arena function 2024-03-24 07:49:49 +00:00
Abdelrahman Said
7bfaf53d4e Return false when initialising arena with 0 capacity 2024-03-24 07:15:39 +00:00
Abdelrahman Said
9179f9beaa Ensure arena has been allocated before attempting to free 2024-03-24 06:37:02 +00:00
76222d31d4 Namespace all functions 2024-03-21 07:26:26 +00:00
7948d3fd1a Ensure arena is freed when initialisation fails 2024-02-24 23:01:26 +00:00
1094a9fefb Add comment for default alignment 2024-02-24 22:59:25 +00:00
b8db582098 Implement growing arena 2024-02-24 20:27:06 +00:00
a169fe3654 Return NULL when aligning forward if ptr is NULL 2024-02-24 20:26:37 +00:00
9513c05b75 Handle NULL pointers in base arena 2024-02-24 18:44:43 +00:00
633632105b Implement base arena allocator 2024-02-24 18:40:25 +00:00
5a0aad5d52 Add memory utilities 2024-02-24 18:40:05 +00:00