summaryrefslogtreecommitdiff
path: root/core/src/fxcrt/fx_basic_memmgr.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'core/src/fxcrt/fx_basic_memmgr.cpp')
-rw-r--r--core/src/fxcrt/fx_basic_memmgr.cpp92
1 files changed, 43 insertions, 49 deletions
diff --git a/core/src/fxcrt/fx_basic_memmgr.cpp b/core/src/fxcrt/fx_basic_memmgr.cpp
index 2ae9075f04..ebc25851f6 100644
--- a/core/src/fxcrt/fx_basic_memmgr.cpp
+++ b/core/src/fxcrt/fx_basic_memmgr.cpp
@@ -7,66 +7,60 @@
#include <stdlib.h> // For abort().
#include "../../include/fxcrt/fx_memory.h"
-void* FXMEM_DefaultAlloc(size_t byte_size, int flags)
-{
- return (void*)malloc(byte_size);
+void* FXMEM_DefaultAlloc(size_t byte_size, int flags) {
+ return (void*)malloc(byte_size);
}
-void* FXMEM_DefaultRealloc(void* pointer, size_t new_size, int flags)
-{
- return realloc(pointer, new_size);
+void* FXMEM_DefaultRealloc(void* pointer, size_t new_size, int flags) {
+ return realloc(pointer, new_size);
}
-void FXMEM_DefaultFree(void* pointer, int flags)
-{
- free(pointer);
+void FXMEM_DefaultFree(void* pointer, int flags) {
+ free(pointer);
}
NEVER_INLINE void FX_OutOfMemoryTerminate() {
- // Termimate cleanly if we can, else crash at a specific address (0xbd).
- abort();
- reinterpret_cast<void(*)()>(0xbd)();
+ // Termimate cleanly if we can, else crash at a specific address (0xbd).
+ abort();
+ reinterpret_cast<void (*)()>(0xbd)();
}
-CFX_GrowOnlyPool::CFX_GrowOnlyPool(size_t trunk_size)
-{
- m_TrunkSize = trunk_size;
- m_pFirstTrunk = NULL;
+CFX_GrowOnlyPool::CFX_GrowOnlyPool(size_t trunk_size) {
+ m_TrunkSize = trunk_size;
+ m_pFirstTrunk = NULL;
}
-CFX_GrowOnlyPool::~CFX_GrowOnlyPool()
-{
- FreeAll();
+CFX_GrowOnlyPool::~CFX_GrowOnlyPool() {
+ FreeAll();
}
struct _FX_GrowOnlyTrunk {
- size_t m_Size;
- size_t m_Allocated;
- _FX_GrowOnlyTrunk* m_pNext;
+ size_t m_Size;
+ size_t m_Allocated;
+ _FX_GrowOnlyTrunk* m_pNext;
};
-void CFX_GrowOnlyPool::FreeAll()
-{
- _FX_GrowOnlyTrunk* pTrunk = (_FX_GrowOnlyTrunk*)m_pFirstTrunk;
- while (pTrunk) {
- _FX_GrowOnlyTrunk* pNext = pTrunk->m_pNext;
- FX_Free(pTrunk);
- pTrunk = pNext;
- }
- m_pFirstTrunk = NULL;
+void CFX_GrowOnlyPool::FreeAll() {
+ _FX_GrowOnlyTrunk* pTrunk = (_FX_GrowOnlyTrunk*)m_pFirstTrunk;
+ while (pTrunk) {
+ _FX_GrowOnlyTrunk* pNext = pTrunk->m_pNext;
+ FX_Free(pTrunk);
+ pTrunk = pNext;
+ }
+ m_pFirstTrunk = NULL;
}
-void* CFX_GrowOnlyPool::Alloc(size_t size)
-{
- size = (size + 3) / 4 * 4;
- _FX_GrowOnlyTrunk* pTrunk = (_FX_GrowOnlyTrunk*)m_pFirstTrunk;
- while (pTrunk) {
- if (pTrunk->m_Size - pTrunk->m_Allocated >= size) {
- void* p = (uint8_t*)(pTrunk + 1) + pTrunk->m_Allocated;
- pTrunk->m_Allocated += size;
- return p;
- }
- pTrunk = pTrunk->m_pNext;
+void* CFX_GrowOnlyPool::Alloc(size_t size) {
+ size = (size + 3) / 4 * 4;
+ _FX_GrowOnlyTrunk* pTrunk = (_FX_GrowOnlyTrunk*)m_pFirstTrunk;
+ while (pTrunk) {
+ if (pTrunk->m_Size - pTrunk->m_Allocated >= size) {
+ void* p = (uint8_t*)(pTrunk + 1) + pTrunk->m_Allocated;
+ pTrunk->m_Allocated += size;
+ return p;
}
- size_t alloc_size = size > m_TrunkSize ? size : m_TrunkSize;
- pTrunk = (_FX_GrowOnlyTrunk*)FX_Alloc(uint8_t, sizeof(_FX_GrowOnlyTrunk) + alloc_size);
- pTrunk->m_Size = alloc_size;
- pTrunk->m_Allocated = size;
- pTrunk->m_pNext = (_FX_GrowOnlyTrunk*)m_pFirstTrunk;
- m_pFirstTrunk = pTrunk;
- return pTrunk + 1;
+ pTrunk = pTrunk->m_pNext;
+ }
+ size_t alloc_size = size > m_TrunkSize ? size : m_TrunkSize;
+ pTrunk = (_FX_GrowOnlyTrunk*)FX_Alloc(uint8_t,
+ sizeof(_FX_GrowOnlyTrunk) + alloc_size);
+ pTrunk->m_Size = alloc_size;
+ pTrunk->m_Allocated = size;
+ pTrunk->m_pNext = (_FX_GrowOnlyTrunk*)m_pFirstTrunk;
+ m_pFirstTrunk = pTrunk;
+ return pTrunk + 1;
}