|
|
@ -51,13 +51,13 @@ void* AllocateExecutableMemory(size_t size, bool low) |
|
|
// printf("Mapped executable memory at %p (size %ld)\n", ptr,
|
|
|
// printf("Mapped executable memory at %p (size %ld)\n", ptr,
|
|
|
// (unsigned long)size);
|
|
|
// (unsigned long)size);
|
|
|
|
|
|
|
|
|
#if defined(__FreeBSD__)
|
|
|
|
|
|
if (ptr == MAP_FAILED) |
|
|
|
|
|
|
|
|
#ifdef _WIN32
|
|
|
|
|
|
if (ptr == nullptr) |
|
|
{ |
|
|
{ |
|
|
ptr = NULL; |
|
|
|
|
|
#else
|
|
|
#else
|
|
|
if (ptr == NULL) |
|
|
|
|
|
|
|
|
if (ptr == MAP_FAILED) |
|
|
{ |
|
|
{ |
|
|
|
|
|
ptr = nullptr; |
|
|
#endif
|
|
|
#endif
|
|
|
PanicAlert("Failed to allocate executable memory"); |
|
|
PanicAlert("Failed to allocate executable memory"); |
|
|
} |
|
|
} |
|
|
@ -88,6 +88,9 @@ void* AllocateMemoryPages(size_t size) |
|
|
#else
|
|
|
#else
|
|
|
void* ptr = mmap(0, size, PROT_READ | PROT_WRITE, |
|
|
void* ptr = mmap(0, size, PROT_READ | PROT_WRITE, |
|
|
MAP_ANON | MAP_PRIVATE, -1, 0); |
|
|
MAP_ANON | MAP_PRIVATE, -1, 0); |
|
|
|
|
|
|
|
|
|
|
|
if (ptr == MAP_FAILED) |
|
|
|
|
|
ptr = nullptr; |
|
|
#endif
|
|
|
#endif
|
|
|
|
|
|
|
|
|
// printf("Mapped memory at %p (size %ld)\n", ptr,
|
|
|
// printf("Mapped memory at %p (size %ld)\n", ptr,
|
|
|
|