Files
FEX-Emu--FEX/Source/Tests/VDSO_Emulation.h
T
Ryan Houdek c027f02e5a ELFCodeLoader: Ensure we set AT_SYSINFO for 32-bit
AT_SYSINFO points to the vsyscall location that the kernel provides.
This AUXV value isn't used on x86-64.
If we have VDSO installed then we can use the one provided from there,
otherwise we need to provide a code page.

It seems like some behaviour changed with glibc provided in Ubuntu 22.10
that it now requires AT_SYSINFO.

Fixes wine 7.0 execution inside the Ubuntu 22.10 rootfs.
2022-11-13 12:39:07 -08:00

12 lines
363 B
C++

#pragma once
#include <FEXCore/IR/IR.h>
namespace FEX::VDSO {
using MapperFn = std::function<void *(void *addr, size_t length, int prot, int flags, int fd, off_t offset)>;
void* LoadVDSOThunks(bool Is64Bit, MapperFn Mapper);
uint64_t GetVSyscallEntry(const void* VDSOBase);
std::vector<FEXCore::IR::ThunkDefinition> const& GetVDSOThunkDefinitions();
}