summaryrefslogtreecommitdiff
path: root/src/code/system_malloc.c
diff options
context:
space:
mode:
authorDragorn421 <Dragorn421@users.noreply.github.com>2024-09-08 23:11:41 +0200
committerGitHub <noreply@github.com>2024-09-08 17:11:41 -0400
commitc7ec814d7897456ecdf1772e395a13f048b5133d (patch)
treeb9324efea542b5f7402563925195b8797fc063be /src/code/system_malloc.c
parenta903f8b8bcc32d8f6c0a76ce5eeead271c297772 (diff)
[headers 9] Add src/libc64/ and new "z64" rand.h (#2164)
* rand.h -> libc64/qrand.h * Add rand.h with z64 rand wrappers * yeet comment * code/rand.c -> libc64/qrand.c * fixup * move libc64 source to src/libc64/ * fix * bss * update file splits disasm metadata
Diffstat (limited to 'src/code/system_malloc.c')
-rw-r--r--src/code/system_malloc.c172
1 files changed, 0 insertions, 172 deletions
diff --git a/src/code/system_malloc.c b/src/code/system_malloc.c
deleted file mode 100644
index de6a56b30..000000000
--- a/src/code/system_malloc.c
+++ /dev/null
@@ -1,172 +0,0 @@
-#include "global.h"
-#include "osMalloc.h"
-
-#define LOG_SEVERITY_NOLOG 0
-#define LOG_SEVERITY_ERROR 2
-#define LOG_SEVERITY_VERBOSE 3
-
-Arena gSystemArena;
-
-#if OOT_DEBUG
-s32 gSystemArenaLogSeverity = LOG_SEVERITY_NOLOG;
-
-void SystemArena_CheckPointer(void* ptr, u32 size, const char* name, const char* action) {
- if (ptr == NULL) {
- if (gSystemArenaLogSeverity >= LOG_SEVERITY_ERROR) {
- PRINTF(T("%s: %u バイトの%sに失敗しました\n", "%s: %u bytes %s failed\n"), name, size, action);
- __osDisplayArena(&gSystemArena);
- return;
- }
- } else if (gSystemArenaLogSeverity >= LOG_SEVERITY_VERBOSE) {
- PRINTF(T("%s: %u バイトの%sに成功しました\n", "%s: %u bytes %s succeeded\n"), name, size, action);
- }
-}
-
-#define SYSTEM_ARENA_CHECK_POINTER(ptr, size, name, action) SystemArena_CheckPointer(ptr, size, name, action)
-#else
-#define SYSTEM_ARENA_CHECK_POINTER(ptr, size, name, action) (void)0
-#endif
-
-void* SystemArena_Malloc(u32 size) {
- DECLARE_INTERRUPT_MASK
- void* ptr;
-
- DISABLE_INTERRUPTS();
- ptr = __osMalloc(&gSystemArena, size);
- RESTORE_INTERRUPTS();
-
- SYSTEM_ARENA_CHECK_POINTER(ptr, size, "malloc", "確保"); // "Secure"
- return ptr;
-}
-
-#if OOT_DEBUG
-void* SystemArena_MallocDebug(u32 size, const char* file, int line) {
- DECLARE_INTERRUPT_MASK
- void* ptr;
-
- DISABLE_INTERRUPTS();
- ptr = __osMallocDebug(&gSystemArena, size, file, line);
- RESTORE_INTERRUPTS();
-
- SYSTEM_ARENA_CHECK_POINTER(ptr, size, "malloc_DEBUG", "確保"); // "Secure"
- return ptr;
-}
-#endif
-
-void* SystemArena_MallocR(u32 size) {
- DECLARE_INTERRUPT_MASK
- void* ptr;
-
- DISABLE_INTERRUPTS();
- ptr = __osMallocR(&gSystemArena, size);
- RESTORE_INTERRUPTS();
-
- SYSTEM_ARENA_CHECK_POINTER(ptr, size, "malloc_r", "確保"); // "Secure"
- return ptr;
-}
-
-#if OOT_DEBUG
-void* SystemArena_MallocRDebug(u32 size, const char* file, int line) {
- DECLARE_INTERRUPT_MASK
- void* ptr;
-
- DISABLE_INTERRUPTS();
- ptr = __osMallocRDebug(&gSystemArena, size, file, line);
- RESTORE_INTERRUPTS();
-
- SYSTEM_ARENA_CHECK_POINTER(ptr, size, "malloc_r_DEBUG", "確保"); // "Secure"
- return ptr;
-}
-#endif
-
-void* SystemArena_Realloc(void* ptr, u32 newSize) {
- DECLARE_INTERRUPT_MASK
-
- DISABLE_INTERRUPTS();
- ptr = __osRealloc(&gSystemArena, ptr, newSize);
- RESTORE_INTERRUPTS();
-
- SYSTEM_ARENA_CHECK_POINTER(ptr, newSize, "realloc", "再確保"); // "Re-securing"
- return ptr;
-}
-
-#if OOT_DEBUG
-void* SystemArena_ReallocDebug(void* ptr, u32 newSize, const char* file, int line) {
- DECLARE_INTERRUPT_MASK
-
- DISABLE_INTERRUPTS();
- ptr = __osReallocDebug(&gSystemArena, ptr, newSize, file, line);
- RESTORE_INTERRUPTS();
-
- SYSTEM_ARENA_CHECK_POINTER(ptr, newSize, "realloc_DEBUG", "再確保"); // "Re-securing"
- return ptr;
-}
-#endif
-
-void SystemArena_Free(void* ptr) {
- DECLARE_INTERRUPT_MASK
-
- DISABLE_INTERRUPTS();
- __osFree(&gSystemArena, ptr);
- RESTORE_INTERRUPTS();
-}
-
-#if OOT_DEBUG
-void SystemArena_FreeDebug(void* ptr, const char* file, int line) {
- DECLARE_INTERRUPT_MASK
-
- DISABLE_INTERRUPTS();
- __osFreeDebug(&gSystemArena, ptr, file, line);
- RESTORE_INTERRUPTS();
-}
-#endif
-
-void* SystemArena_Calloc(u32 num, u32 size) {
- DECLARE_INTERRUPT_MASK
- void* ret;
- u32 n = num * size;
-
- DISABLE_INTERRUPTS();
- ret = __osMalloc(&gSystemArena, n);
- RESTORE_INTERRUPTS();
-
- if (ret != NULL) {
- bzero(ret, n);
- }
-
- SYSTEM_ARENA_CHECK_POINTER(ret, n, "calloc", "確保");
- return ret;
-}
-
-#if OOT_DEBUG
-void SystemArena_Display(void) {
- PRINTF(T("システムヒープ表示\n", "System heap display\n"));
- __osDisplayArena(&gSystemArena);
-}
-#endif
-
-void SystemArena_GetSizes(u32* outMaxFree, u32* outFree, u32* outAlloc) {
- ArenaImpl_GetSizes(&gSystemArena, outMaxFree, outFree, outAlloc);
-}
-
-void SystemArena_Check(void) {
- __osCheckArena(&gSystemArena);
-}
-
-void SystemArena_Init(void* start, u32 size) {
-#if OOT_DEBUG
- gSystemArenaLogSeverity = LOG_SEVERITY_NOLOG;
-#endif
- __osMallocInit(&gSystemArena, start, size);
-}
-
-void SystemArena_Cleanup(void) {
-#if OOT_DEBUG
- gSystemArenaLogSeverity = LOG_SEVERITY_NOLOG;
-#endif
- __osMallocCleanup(&gSystemArena);
-}
-
-s32 SystemArena_IsInitialized(void) {
- return __osMallocIsInitialized(&gSystemArena);
-}