diff options
| author | Yang Liu <liuyang22@iscas.ac.cn> | 2025-04-14 17:29:22 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-04-14 11:29:22 +0200 |
| commit | ee530a73319423f7613304cf8c980fbabd89c5ae (patch) | |
| tree | b6efd6f08b0d39904a4e34b783e5ebe428099481 /src/include | |
| parent | b7cb36d362861cf857a6958c13c2357657c1d967 (diff) | |
| download | box64-ee530a73319423f7613304cf8c980fbabd89c5ae.tar.gz box64-ee530a73319423f7613304cf8c980fbabd89c5ae.zip | |
[WOW64] More tweaks for PE build (#2528)
Diffstat (limited to 'src/include')
| -rw-r--r-- | src/include/dynablock.h | 3 | ||||
| -rw-r--r-- | src/include/os.h | 11 |
2 files changed, 13 insertions, 1 deletions
diff --git a/src/include/dynablock.h b/src/include/dynablock.h index b9aeddc0..551a223e 100644 --- a/src/include/dynablock.h +++ b/src/include/dynablock.h @@ -24,4 +24,7 @@ void cancelFillBlock(void); // clear instruction cache on a range void ClearCache(void* start, size_t len); +uintptr_t getX64Address(dynablock_t* db, uintptr_t native_addr); +int getX64AddressInst(dynablock_t* db, uintptr_t x64pc); + #endif //__DYNABLOCK_H_ \ No newline at end of file diff --git a/src/include/os.h b/src/include/os.h index f6e7371d..d4566305 100644 --- a/src/include/os.h +++ b/src/include/os.h @@ -9,7 +9,6 @@ #include <sys/mman.h> #else typedef __int64 ssize_t; - #define dlsym(a, b) NULL #define PROT_READ 0x1 @@ -49,6 +48,8 @@ void EmuInt3(void* emu, void* addr); void* EmuFork(void* emu, int forktype); void PersonalityAddrLimit32Bit(void); + +int IsAddrElfOrFileMapped(uintptr_t addr); // ---------------------------------------------------------------- #ifndef _WIN32 @@ -81,4 +82,12 @@ void PersonalityAddrLimit32Bit(void); #define PROT_WRITE 0x2 #define PROT_EXEC 0x4 +#if defined(__clang__) && !defined(_WIN32) +extern int isinff(float); +extern int isnanf(float); +#elif defined(_WIN32) +#define isnanf _isnanf +#define isinff isinf +#endif + #endif //__OS_H_ |