Create SysMacOSVirtual.h

This commit is contained in:
Smiril 2024-05-11 21:34:17 +02:00 committed by GitHub
parent 20a87036ab
commit bccef0b6cb
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 30 additions and 0 deletions

View File

@ -0,0 +1,30 @@
#ifndef INCLUDE_KYTY_SYS_MACOS_SYSLINUXVIRTUAL_H_
#define INCLUDE_KYTY_SYS_MACOS_SYSLINUXVIRTUAL_H_
#if KYTY_PLATFORM != KYTY_PLATFORM_MACOS
//#error "KYTY_PLATFORM != KYTY_PLATFORM_MACOS"
#else
#include "Kyty/Core/Common.h"
#include "Kyty/Core/String.h"
#include "Kyty/Core/VirtualMemory.h"
namespace Kyty::Core {
void sys_get_system_info(SystemInfo* info);
void sys_virtual_init();
uint64_t sys_virtual_alloc(uint64_t address, uint64_t size, VirtualMemory::Mode mode);
uint64_t sys_virtual_alloc_aligned(uint64_t address, uint64_t size, VirtualMemory::Mode mode, uint64_t alignment);
bool sys_virtual_alloc_fixed(uint64_t address, uint64_t size, VirtualMemory::Mode mode);
bool sys_virtual_free(uint64_t address);
bool sys_virtual_protect(uint64_t address, uint64_t size, VirtualMemory::Mode mode, VirtualMemory::Mode* old_mode = nullptr);
bool sys_virtual_flush_instruction_cache(uint64_t address, uint64_t size);
bool sys_virtual_patch_replace(uint64_t vaddr, uint64_t value);
} // namespace Kyty::Core
#endif
#endif /* INCLUDE_KYTY_SYS_MACOS_SYSLINUXVIRTUAL_H_ */