Luna/luna/src/Alloc.cpp

25 lines
401 B
C++
Raw Normal View History

2022-12-07 18:17:49 +01:00
#include <luna/Alloc.h>
#ifndef USE_FREESTANDING
#include <stdlib.h>
#endif
[[nodiscard]] void* raw_malloc(usize size)
{
#ifdef USE_FREESTANDING
2022-12-16 20:36:43 +01:00
char* const rc = new (std::nothrow) char[size];
2022-12-07 18:17:49 +01:00
return (void*)rc;
#else
return malloc(size);
#endif
}
void raw_free(void* ptr)
{
#ifdef USE_FREESTANDING
char* const arr = (char*)ptr;
delete[] arr;
#else
return free(ptr);
#endif
}