summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/rmem.h23
1 files changed, 12 insertions, 11 deletions
diff --git a/src/rmem.h b/src/rmem.h
index 6ea6ffaa..8f920039 100644
--- a/src/rmem.h
+++ b/src/rmem.h
@@ -161,9 +161,7 @@ RMEMAPI intptr_t BiStackMargins(BiStack destack);
#if defined(RMEM_IMPLEMENTATION)
-#include <stdio.h> // Required for:
-#include <stdlib.h> // Required for:
-#include <string.h> // Required for:
+#include <stdio.h> // Required for: malloc(), calloc(), free()
//----------------------------------------------------------------------------------
// Defines and Macros
@@ -205,7 +203,7 @@ MemPool CreateMemPool(const size_t size)
mempool.stack.size = size;
mempool.stack.mem = malloc(mempool.stack.size*sizeof *mempool.stack.mem);
- if (mempool.stack.mem==NULL)
+ if (mempool.stack.mem == NULL)
{
mempool.stack.size = 0UL;
return mempool;
@@ -252,7 +250,9 @@ void *MemPoolAlloc(MemPool *const mempool, const size_t size)
const size_t BUCKET_INDEX = (ALLOC_SIZE >> MEMPOOL_BUCKET_BITS) - 1;
// If the size is small enough, let's check if our buckets has a fitting memory block.
- if (BUCKET_INDEX < MEMPOOL_BUCKET_SIZE && mempool->buckets[BUCKET_INDEX] != NULL && mempool->buckets[BUCKET_INDEX]->size >= ALLOC_SIZE)
+ if ((BUCKET_INDEX < MEMPOOL_BUCKET_SIZE) &&
+ (mempool->buckets[BUCKET_INDEX] != NULL) &&
+ (mempool->buckets[BUCKET_INDEX]->size >= ALLOC_SIZE))
{
new_mem = mempool->buckets[BUCKET_INDEX];
mempool->buckets[BUCKET_INDEX] = mempool->buckets[BUCKET_INDEX]->next;
@@ -424,9 +424,9 @@ size_t GetMemPoolFreeMemory(const MemPool mempool)
{
size_t total_remaining = (uintptr_t)mempool.stack.base - (uintptr_t)mempool.stack.mem;
- for (MemNode *n=mempool.freeList.head; n != NULL; n = n->next) total_remaining += n->size;
+ for (MemNode *n = mempool.freeList.head; n != NULL; n = n->next) total_remaining += n->size;
- for (size_t i=0; i<MEMPOOL_BUCKET_SIZE; i++) for (MemNode *n = mempool.buckets[i]; n != NULL; n = n->next) total_remaining += n->size;
+ for (int i = 0; i < MEMPOOL_BUCKET_SIZE; i++) for (MemNode *n = mempool.buckets[i]; n != NULL; n = n->next) total_remaining += n->size;
return total_remaining;
}
@@ -436,7 +436,7 @@ void MemPoolReset(MemPool *const mempool)
if (mempool == NULL) return;
mempool->freeList.head = mempool->freeList.tail = NULL;
mempool->freeList.len = 0;
- for (size_t i = 0; i < MEMPOOL_BUCKET_SIZE; i++) mempool->buckets[i] = NULL;
+ for (int i = 0; i < MEMPOOL_BUCKET_SIZE; i++) mempool->buckets[i] = NULL;
mempool->stack.base = mempool->stack.mem + mempool->stack.size;
}
@@ -453,7 +453,7 @@ bool MemPoolDefrag(MemPool *const mempool)
}
else
{
- for (size_t i=0; i<MEMPOOL_BUCKET_SIZE; i++)
+ for (int i = 0; i < MEMPOOL_BUCKET_SIZE; i++)
{
while (mempool->buckets[i] != NULL)
{
@@ -593,7 +593,7 @@ ObjPool CreateObjPool(const size_t objsize, const size_t len)
}
else
{
- for (size_t i=0; i<objpool.freeBlocks; i++)
+ for (int i = 0; i < objpool.freeBlocks; i++)
{
union ObjInfo block = { .byte = &objpool.stack.mem[i*objpool.objSize] };
*block.index = i + 1;
@@ -617,7 +617,7 @@ ObjPool CreateObjPoolFromBuffer(void *const buf, const size_t objsize, const siz
objpool.stack.size = objpool.freeBlocks = len;
objpool.stack.mem = buf;
- for (size_t i=0; i<objpool.freeBlocks; i++)
+ for (int i = 0; i < objpool.freeBlocks; i++)
{
union ObjInfo block = { .byte = &objpool.stack.mem[i*objpool.objSize] };
*block.index = i + 1;
@@ -655,6 +655,7 @@ void *ObjPoolAlloc(ObjPool *const objpool)
// Head = &pool[*Head * pool.objsize];
objpool->stack.base = (objpool->freeBlocks != 0UL)? objpool->stack.mem + (*ret.index*objpool->objSize) : NULL;
memset(ret.byte, 0, objpool->objSize);
+
return ret.byte;
}
else return NULL;