diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2021-05-17 10:09:13 +0200 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2021-05-17 10:09:13 +0200 |
| commit | bd5d29a825af62ceb849569d6fa4e8a646c18322 (patch) | |
| tree | 50fdd4cf200d25f5c94a8215de35d26b4a1cc0e2 | |
| parent | 5255935a3115bed37ac7a1ee407059acc3e1308b (diff) | |
| download | box64-bd5d29a825af62ceb849569d6fa4e8a646c18322.tar.gz box64-bd5d29a825af62ceb849569d6fa4e8a646c18322.zip | |
Fixed epoll_wait alignment
| -rw-r--r-- | src/wrapped/generated/functions_list.txt | 1 | ||||
| -rw-r--r-- | src/wrapped/generated/wrappedlibctypes.h | 2 | ||||
| -rw-r--r-- | src/wrapped/generated/wrapper.c | 2 | ||||
| -rw-r--r-- | src/wrapped/generated/wrapper.h | 1 | ||||
| -rwxr-xr-x | src/wrapped/wrappedlibc_private.h | 6 |
5 files changed, 10 insertions, 2 deletions
diff --git a/src/wrapped/generated/functions_list.txt b/src/wrapped/generated/functions_list.txt index 58c38d0f..f4b372aa 100644 --- a/src/wrapped/generated/functions_list.txt +++ b/src/wrapped/generated/functions_list.txt @@ -1211,6 +1211,7 @@ #!defined(NOALIGN) iFEpLp #!defined(NOALIGN) iFEppu #!defined(NOALIGN) iFEiiip +#!defined(NOALIGN) iFEipii #defined(HAVE_LD80BITS) DFD #defined(HAVE_LD80BITS) DFDD #defined(HAVE_LD80BITS) DFDp diff --git a/src/wrapped/generated/wrappedlibctypes.h b/src/wrapped/generated/wrappedlibctypes.h index 6655c626..4921641d 100644 --- a/src/wrapped/generated/wrappedlibctypes.h +++ b/src/wrapped/generated/wrappedlibctypes.h @@ -43,6 +43,7 @@ typedef void* (*pFpip_t)(void*, int64_t, void*); typedef void (*vFiipV_t)(int64_t, int64_t, void*, void*); typedef void (*vFpLLp_t)(void*, uintptr_t, uintptr_t, void*); typedef int64_t (*iFiiip_t)(int64_t, int64_t, int64_t, void*); +typedef int64_t (*iFipii_t)(int64_t, void*, int64_t, int64_t); typedef int64_t (*iFpipp_t)(void*, int64_t, void*, void*); typedef int64_t (*iFpipV_t)(void*, int64_t, void*, void*); typedef int64_t (*iFpLpp_t)(void*, uintptr_t, void*, void*); @@ -135,6 +136,7 @@ typedef int64_t (*iFpippppp_t)(void*, int64_t, void*, void*, void*, void*, void* GO(__syslog_chk, vFiipV_t) \ GO(qsort, vFpLLp_t) \ GO(epoll_ctl, iFiiip_t) \ + GO(epoll_wait, iFipii_t) \ GO(__vasprintf_chk, iFpipp_t) \ GO(glob, iFpipp_t) \ GO(glob64, iFpipp_t) \ diff --git a/src/wrapped/generated/wrapper.c b/src/wrapped/generated/wrapper.c index 83ea6e9e..ab9a9b64 100644 --- a/src/wrapped/generated/wrapper.c +++ b/src/wrapped/generated/wrapper.c @@ -1247,6 +1247,7 @@ typedef void* (*pFipppppppppppppppppppppp_t)(int64_t, void*, void*, void*, void* typedef int64_t (*iFEpLp_t)(x64emu_t*, void*, uintptr_t, void*); typedef int64_t (*iFEppu_t)(x64emu_t*, void*, void*, uint64_t); typedef int64_t (*iFEiiip_t)(x64emu_t*, int64_t, int64_t, int64_t, void*); +typedef int64_t (*iFEipii_t)(x64emu_t*, int64_t, void*, int64_t, int64_t); #endif #if defined(HAVE_LD80BITS) @@ -2476,6 +2477,7 @@ void pFipppppppppppppppppppppp(x64emu_t *emu, uintptr_t fcn) { pFipppppppppppppp void iFEpLp(x64emu_t *emu, uintptr_t fcn) { iFEpLp_t fn = (iFEpLp_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX); } void iFEppu(x64emu_t *emu, uintptr_t fcn) { iFEppu_t fn = (iFEppu_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX); } void iFEiiip(x64emu_t *emu, uintptr_t fcn) { iFEiiip_t fn = (iFEiiip_t)fcn; R_RAX=(int64_t)fn(emu, (int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX); } +void iFEipii(x64emu_t *emu, uintptr_t fcn) { iFEipii_t fn = (iFEipii_t)fcn; R_RAX=(int64_t)fn(emu, (int64_t)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX); } #endif #if defined(HAVE_LD80BITS) diff --git a/src/wrapped/generated/wrapper.h b/src/wrapped/generated/wrapper.h index 5a234181..cdf0aa05 100644 --- a/src/wrapped/generated/wrapper.h +++ b/src/wrapped/generated/wrapper.h @@ -1243,6 +1243,7 @@ void pFipppppppppppppppppppppp(x64emu_t *emu, uintptr_t fnc); void iFEpLp(x64emu_t *emu, uintptr_t fnc); void iFEppu(x64emu_t *emu, uintptr_t fnc); void iFEiiip(x64emu_t *emu, uintptr_t fnc); +void iFEipii(x64emu_t *emu, uintptr_t fnc); #endif #if defined(HAVE_LD80BITS) diff --git a/src/wrapped/wrappedlibc_private.h b/src/wrapped/wrappedlibc_private.h index 4ea93622..cd7d548b 100755 --- a/src/wrapped/wrappedlibc_private.h +++ b/src/wrapped/wrappedlibc_private.h @@ -260,11 +260,13 @@ GO(epoll_create, iFi) GO(epoll_create1, iFO) #ifdef NOALIGN GO(epoll_ctl, iFiiip) +//GO(epoll_pwait, +GO(epoll_wait, iFipii) #else GOM(epoll_ctl, iFEiiip) // struct epoll_event is 12byte on x86_64 and 16bytes (8bytes aligned) on arm64 -#endif //GO(epoll_pwait, -GO(epoll_wait, iFipii) +GOM(epoll_wait, iFEipii) +#endif GO(erand48, dFp) //GOW(erand48_r, //GO(err, |