diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/wrapped/generated/functions_list.txt | 1 | ||||
| -rw-r--r-- | src/wrapped/generated/wrapper.c | 3 | ||||
| -rw-r--r-- | src/wrapped/generated/wrapper.h | 1 | ||||
| -rwxr-xr-x | src/wrapped/wrappedlibc.c | 2 | ||||
| -rwxr-xr-x | src/wrapped/wrappedlibc_private.h | 2 | ||||
| -rwxr-xr-x | src/wrapped/wrappedlibpthread_private.h | 2 |
6 files changed, 9 insertions, 2 deletions
diff --git a/src/wrapped/generated/functions_list.txt b/src/wrapped/generated/functions_list.txt index d5deed0a..f2fd349a 100644 --- a/src/wrapped/generated/functions_list.txt +++ b/src/wrapped/generated/functions_list.txt @@ -314,6 +314,7 @@ #() iFupL #() iFupp #() iFfff +#() iFlip #() iFLip #() iFLLi #() iFLpp diff --git a/src/wrapped/generated/wrapper.c b/src/wrapped/generated/wrapper.c index 201e99e6..1e31fd6d 100644 --- a/src/wrapped/generated/wrapper.c +++ b/src/wrapped/generated/wrapper.c @@ -348,6 +348,7 @@ typedef int64_t (*iFuLp_t)(uint64_t, uintptr_t, void*); typedef int64_t (*iFupL_t)(uint64_t, void*, uintptr_t); typedef int64_t (*iFupp_t)(uint64_t, void*, void*); typedef int64_t (*iFfff_t)(float, float, float); +typedef int64_t (*iFlip_t)(intptr_t, int64_t, void*); typedef int64_t (*iFLip_t)(uintptr_t, int64_t, void*); typedef int64_t (*iFLLi_t)(uintptr_t, uintptr_t, int64_t); typedef int64_t (*iFLpp_t)(uintptr_t, void*, void*); @@ -1872,6 +1873,7 @@ void iFuLp(x64emu_t *emu, uintptr_t fcn) { iFuLp_t fn = (iFuLp_t)fcn; R_RAX=(int void iFupL(x64emu_t *emu, uintptr_t fcn) { iFupL_t fn = (iFupL_t)fcn; R_RAX=(int64_t)fn((uint64_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX); } void iFupp(x64emu_t *emu, uintptr_t fcn) { iFupp_t fn = (iFupp_t)fcn; R_RAX=(int64_t)fn((uint64_t)R_RDI, (void*)R_RSI, (void*)R_RDX); } void iFfff(x64emu_t *emu, uintptr_t fcn) { iFfff_t fn = (iFfff_t)fcn; R_RAX=(int64_t)fn(emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0]); } +void iFlip(x64emu_t *emu, uintptr_t fcn) { iFlip_t fn = (iFlip_t)fcn; R_RAX=(int64_t)fn((intptr_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX); } void iFLip(x64emu_t *emu, uintptr_t fcn) { iFLip_t fn = (iFLip_t)fcn; R_RAX=(int64_t)fn((uintptr_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX); } void iFLLi(x64emu_t *emu, uintptr_t fcn) { iFLLi_t fn = (iFLLi_t)fcn; R_RAX=(int64_t)fn((uintptr_t)R_RDI, (uintptr_t)R_RSI, (int64_t)R_RDX); } void iFLpp(x64emu_t *emu, uintptr_t fcn) { iFLpp_t fn = (iFLpp_t)fcn; R_RAX=(int64_t)fn((uintptr_t)R_RDI, (void*)R_RSI, (void*)R_RDX); } @@ -3356,6 +3358,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFupL) return 1; if (fun == &iFupp) return 1; if (fun == &iFfff) return 4; + if (fun == &iFlip) return 1; if (fun == &iFLip) return 1; if (fun == &iFLLi) return 1; if (fun == &iFLpp) return 1; diff --git a/src/wrapped/generated/wrapper.h b/src/wrapped/generated/wrapper.h index 9e9b92ee..3d65511c 100644 --- a/src/wrapped/generated/wrapper.h +++ b/src/wrapped/generated/wrapper.h @@ -347,6 +347,7 @@ void iFuLp(x64emu_t *emu, uintptr_t fnc); void iFupL(x64emu_t *emu, uintptr_t fnc); void iFupp(x64emu_t *emu, uintptr_t fnc); void iFfff(x64emu_t *emu, uintptr_t fnc); +void iFlip(x64emu_t *emu, uintptr_t fnc); void iFLip(x64emu_t *emu, uintptr_t fnc); void iFLLi(x64emu_t *emu, uintptr_t fnc); void iFLpp(x64emu_t *emu, uintptr_t fnc); diff --git a/src/wrapped/wrappedlibc.c b/src/wrapped/wrappedlibc.c index 98da2cda..f668b58b 100755 --- a/src/wrapped/wrappedlibc.c +++ b/src/wrapped/wrappedlibc.c @@ -2020,7 +2020,7 @@ EXPORT void* my_mmap64(x64emu_t* emu, void *addr, unsigned long length, int prot addr = find32bitBlock(length); else addr = findBlockNearHint(addr, length); - } else /*if (box64_wine)*/ { + } else if (box64_wine) { if(!addr) addr = find47bitBlock(length); } diff --git a/src/wrapped/wrappedlibc_private.h b/src/wrapped/wrappedlibc_private.h index 7c0dbb13..515532d1 100755 --- a/src/wrapped/wrappedlibc_private.h +++ b/src/wrapped/wrappedlibc_private.h @@ -2299,3 +2299,5 @@ GOM(__deregister_frame_info, pFp) DATAM(program_invocation_name, sizeof(void*)) DATAM(program_invocation_short_name, sizeof(void*)) + +GO(iconvctl, iFlip) \ No newline at end of file diff --git a/src/wrapped/wrappedlibpthread_private.h b/src/wrapped/wrappedlibpthread_private.h index 9ce05541..469bea50 100755 --- a/src/wrapped/wrappedlibpthread_private.h +++ b/src/wrapped/wrappedlibpthread_private.h @@ -129,7 +129,7 @@ GOM(__pthread_key_create, iFEpp) GOM(pthread_key_create, iFEpp) GO(pthread_key_delete, iFL) GOM(pthread_kill, iFEpi) -// pthread_kill_other_threads_np +GO(pthread_kill_other_threads_np, vFv) #ifdef NOALIGN GO(__pthread_mutexattr_destroy, iFp) GO(pthread_mutexattr_destroy, iFp) |