diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2021-03-05 14:41:10 +0100 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2021-03-05 14:41:10 +0100 |
| commit | a6337819c0975b733ab8784dedbea7707da06a6f (patch) | |
| tree | 5cb37a681c5020c25f53b35444e41e5e9961b8e9 /src/wrapped/generated/wrapper.c | |
| parent | cafbaa1e239994ee0ef694e2650cb224ce15a7a9 (diff) | |
| download | box64-a6337819c0975b733ab8784dedbea7707da06a6f.tar.gz box64-a6337819c0975b733ab8784dedbea7707da06a6f.zip | |
Added atof, atoi, atol and atoll wrapped functions
Diffstat (limited to 'src/wrapped/generated/wrapper.c')
| -rw-r--r-- | src/wrapped/generated/wrapper.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/wrapped/generated/wrapper.c b/src/wrapped/generated/wrapper.c index e80c2f78..db22ceed 100644 --- a/src/wrapped/generated/wrapper.c +++ b/src/wrapped/generated/wrapper.c @@ -76,6 +76,8 @@ typedef int32_t (*iFE_t)(x64emu_t*); typedef int32_t (*iFi_t)(int32_t); typedef int32_t (*iFu_t)(uint32_t); typedef int32_t (*iFp_t)(void*); +typedef int64_t (*IFp_t)(void*); +typedef double (*dFp_t)(void*); typedef intptr_t (*lFp_t)(void*); typedef void* (*pFE_t)(x64emu_t*); typedef void* (*pFp_t)(void*); @@ -109,6 +111,8 @@ void iFE(x64emu_t *emu, uintptr_t fcn) { iFE_t fn = (iFE_t)fcn; R_RAX=fn(emu); } void iFi(x64emu_t *emu, uintptr_t fcn) { iFi_t fn = (iFi_t)fcn; R_RAX=fn((int32_t)R_RDI); } void iFu(x64emu_t *emu, uintptr_t fcn) { iFu_t fn = (iFu_t)fcn; R_RAX=fn((uint32_t)R_RDI); } void iFp(x64emu_t *emu, uintptr_t fcn) { iFp_t fn = (iFp_t)fcn; R_RAX=fn((void*)R_RDI); } +void IFp(x64emu_t *emu, uintptr_t fcn) { IFp_t fn = (IFp_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI); } +void dFp(x64emu_t *emu, uintptr_t fcn) { dFp_t fn = (dFp_t)fcn; emu->xmm[0].d[0]=fn((void*)R_RDI); } void lFp(x64emu_t *emu, uintptr_t fcn) { lFp_t fn = (lFp_t)fcn; R_RAX=(intptr_t)fn((void*)R_RDI); } void pFE(x64emu_t *emu, uintptr_t fcn) { pFE_t fn = (pFE_t)fcn; R_RAX=(uintptr_t)fn(emu); } void pFp(x64emu_t *emu, uintptr_t fcn) { pFp_t fn = (pFp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI); } |