Files
FEX-Emu--FEX/Source/Tests/LinuxSyscalls/LinuxAllocator.h
T
Ryan Houdek 2fba3a4a9a LinuxAllocator: Uppercase function names
Not only does this match our internal naming convention. This avoids the
shm symbol namespace collision as well.
2022-09-05 02:39:42 -07:00

22 lines
758 B
C++

#pragma once
#include <cstdint>
#include <memory>
namespace FEX::HLE {
constexpr uint32_t X86_64_MAP_32BIT = 0x40;
class MemAllocator {
public:
virtual ~MemAllocator() = default;
virtual void *Mmap(void *addr, size_t length, int prot, int flags, int fd, off_t offset) = 0;
virtual int Munmap(void *addr, size_t length) = 0;
virtual void *Mremap(void *old_address, size_t old_size, size_t new_size, int flags, void *new_address) = 0;
virtual uint64_t Shmat(int shmid, const void* shmaddr, int shmflg, uint32_t *ResultAddress) = 0;
virtual uint64_t Shmdt(const void* shmaddr) = 0;
};
std::unique_ptr<FEX::HLE::MemAllocator> Create32BitAllocator();
std::unique_ptr<FEX::HLE::MemAllocator> CreatePassthroughAllocator();
}