diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2023-04-06 10:56:02 +0200 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2023-04-06 10:56:02 +0200 |
| commit | 307a019cb8e92051fe8fda897a784bba30284e6e (patch) | |
| tree | dc2a20644f3eec8dbdd4a2fedd17e1ecf98f4627 /src/wrapped/generated/wrapper.c | |
| parent | 4ca16188c215cdbb001f0ed2794c50d812197673 (diff) | |
| download | box64-307a019cb8e92051fe8fda897a784bba30284e6e.tar.gz box64-307a019cb8e92051fe8fda897a784bba30284e6e.zip | |
Try to add complex function in libm
Diffstat (limited to 'src/wrapped/generated/wrapper.c')
| -rw-r--r-- | src/wrapped/generated/wrapper.c | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/src/wrapped/generated/wrapper.c b/src/wrapped/generated/wrapper.c index 6f0c8244..83387b82 100644 --- a/src/wrapped/generated/wrapper.c +++ b/src/wrapped/generated/wrapper.c @@ -1,5 +1,5 @@ /******************************************************************* - * File automatically generated by rebuild_wrappers.py (v2.2.0.16) * + * File automatically generated by rebuild_wrappers.py (v2.2.0.17) * *******************************************************************/ #include <stdio.h> #include <stdlib.h> @@ -10,6 +10,8 @@ #include "emu/x87emu_private.h" #include "regs.h" #include "x64emu.h" +#define COMPLEX_IMPL +#include "complext.h" extern void* my__IO_2_1_stdin_ ; extern void* my__IO_2_1_stdout_; @@ -87,7 +89,6 @@ typedef uint32_t (*uFp_t)(void*); typedef uint64_t (*UFv_t)(void); typedef uint64_t (*UFu_t)(uint32_t); typedef uint64_t (*UFp_t)(void*); -typedef uint64_t (*UFV_t)(void*); typedef float (*fFi_t)(int32_t); typedef float (*fFf_t)(float); typedef float (*fFp_t)(void*); @@ -123,6 +124,8 @@ typedef void* (*pFp_t)(void*); typedef void* (*pFV_t)(void*); typedef unsigned __int128 (*HFi_t)(int32_t); typedef unsigned __int128 (*HFp_t)(void*); +typedef complexf_t (*xFx_t)(complexf_t); +typedef complex_t (*XFX_t)(complex_t); typedef void (*vWp_t)(void*); typedef int32_t (*iWp_t)(void*); typedef uint32_t (*uWp_t)(void*); @@ -301,11 +304,12 @@ typedef void* (*pFpd_t)(void*, double); typedef void* (*pFpl_t)(void*, intptr_t); typedef void* (*pFpL_t)(void*, uintptr_t); typedef void* (*pFpp_t)(void*, void*); -typedef void* (*pFpV_t)(void*, void*); typedef void* (*pFSi_t)(void*, int32_t); typedef unsigned __int128 (*HFII_t)(int64_t, int64_t); typedef unsigned __int128 (*HFll_t)(intptr_t, intptr_t); typedef unsigned __int128 (*HFpi_t)(void*, int32_t); +typedef complexf_t (*xFxx_t)(complexf_t, complexf_t); +typedef complex_t (*XFXX_t)(complex_t, complex_t); typedef int32_t (*iWpi_t)(void*, int32_t); typedef int32_t (*iWpu_t)(void*, uint32_t); typedef int32_t (*iWpf_t)(void*, float); @@ -2481,7 +2485,6 @@ void uFp(x64emu_t *emu, uintptr_t fcn) { uFp_t fn = (uFp_t)fcn; R_RAX=(uint32_t) void UFv(x64emu_t *emu, uintptr_t fcn) { UFv_t fn = (UFv_t)fcn; R_RAX=fn(); } void UFu(x64emu_t *emu, uintptr_t fcn) { UFu_t fn = (UFu_t)fcn; R_RAX=fn((uint32_t)R_RDI); } void UFp(x64emu_t *emu, uintptr_t fcn) { UFp_t fn = (UFp_t)fcn; R_RAX=fn((void*)R_RDI); } -void UFV(x64emu_t *emu, uintptr_t fcn) { UFV_t fn = (UFV_t)fcn; R_RAX=fn((void*)(R_RSP + 8)); } void fFi(x64emu_t *emu, uintptr_t fcn) { fFi_t fn = (fFi_t)fcn; emu->xmm[0].f[0]=fn((int32_t)R_RDI); } void fFf(x64emu_t *emu, uintptr_t fcn) { fFf_t fn = (fFf_t)fcn; emu->xmm[0].f[0]=fn(emu->xmm[0].f[0]); } void fFp(x64emu_t *emu, uintptr_t fcn) { fFp_t fn = (fFp_t)fcn; emu->xmm[0].f[0]=fn((void*)R_RDI); } @@ -2517,6 +2520,8 @@ void pFp(x64emu_t *emu, uintptr_t fcn) { pFp_t fn = (pFp_t)fcn; R_RAX=(uintptr_t void pFV(x64emu_t *emu, uintptr_t fcn) { pFV_t fn = (pFV_t)fcn; R_RAX=(uintptr_t)fn((void*)(R_RSP + 8)); } void HFi(x64emu_t *emu, uintptr_t fcn) { HFi_t fn = (HFi_t)fcn; unsigned __int128 u128 = fn((int32_t)R_RDI); R_RAX=(u128&0xFFFFFFFFFFFFFFFFL); R_RDX=(u128>>64)&0xFFFFFFFFFFFFFFFFL; } void HFp(x64emu_t *emu, uintptr_t fcn) { HFp_t fn = (HFp_t)fcn; unsigned __int128 u128 = fn((void*)R_RDI); R_RAX=(u128&0xFFFFFFFFFFFFFFFFL); R_RDX=(u128>>64)&0xFFFFFFFFFFFFFFFFL; } +void xFx(x64emu_t *emu, uintptr_t fcn) { xFx_t fn = (xFx_t)fcn; from_complexf(emu, fn(to_complexf(emu, 0))); } +void XFX(x64emu_t *emu, uintptr_t fcn) { XFX_t fn = (XFX_t)fcn; from_complex(emu, fn(to_complex(emu, 0))); } void vWp(x64emu_t *emu, uintptr_t fcn) { vWp_t fn = (vWp_t)fcn; fn((void*)R_RCX); } void iWp(x64emu_t *emu, uintptr_t fcn) { iWp_t fn = (iWp_t)fcn; R_RAX=(int32_t)fn((void*)R_RCX); } void uWp(x64emu_t *emu, uintptr_t fcn) { uWp_t fn = (uWp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RCX); } @@ -2695,11 +2700,12 @@ void pFpd(x64emu_t *emu, uintptr_t fcn) { pFpd_t fn = (pFpd_t)fcn; R_RAX=(uintpt void pFpl(x64emu_t *emu, uintptr_t fcn) { pFpl_t fn = (pFpl_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (intptr_t)R_RSI); } void pFpL(x64emu_t *emu, uintptr_t fcn) { pFpL_t fn = (pFpL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uintptr_t)R_RSI); } void pFpp(x64emu_t *emu, uintptr_t fcn) { pFpp_t fn = (pFpp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI); } -void pFpV(x64emu_t *emu, uintptr_t fcn) { pFpV_t fn = (pFpV_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)(R_RSP + 8)); } void pFSi(x64emu_t *emu, uintptr_t fcn) { pFSi_t fn = (pFSi_t)fcn; R_RAX=(uintptr_t)fn(io_convert((void*)R_RDI), (int32_t)R_RSI); } void HFII(x64emu_t *emu, uintptr_t fcn) { HFII_t fn = (HFII_t)fcn; unsigned __int128 u128 = fn((int64_t)R_RDI, (int64_t)R_RSI); R_RAX=(u128&0xFFFFFFFFFFFFFFFFL); R_RDX=(u128>>64)&0xFFFFFFFFFFFFFFFFL; } void HFll(x64emu_t *emu, uintptr_t fcn) { HFll_t fn = (HFll_t)fcn; unsigned __int128 u128 = fn((intptr_t)R_RDI, (intptr_t)R_RSI); R_RAX=(u128&0xFFFFFFFFFFFFFFFFL); R_RDX=(u128>>64)&0xFFFFFFFFFFFFFFFFL; } void HFpi(x64emu_t *emu, uintptr_t fcn) { HFpi_t fn = (HFpi_t)fcn; unsigned __int128 u128 = fn((void*)R_RDI, (int32_t)R_RSI); R_RAX=(u128&0xFFFFFFFFFFFFFFFFL); R_RDX=(u128>>64)&0xFFFFFFFFFFFFFFFFL; } +void xFxx(x64emu_t *emu, uintptr_t fcn) { xFxx_t fn = (xFxx_t)fcn; from_complexf(emu, fn(to_complexf(emu, 0),to_complexf(emu, 1))); } +void XFXX(x64emu_t *emu, uintptr_t fcn) { XFXX_t fn = (XFXX_t)fcn; from_complex(emu, fn(to_complex(emu, 0),to_complex(emu, 1))); } void iWpi(x64emu_t *emu, uintptr_t fcn) { iWpi_t fn = (iWpi_t)fcn; R_RAX=(int32_t)fn((void*)R_RCX, (int32_t)R_RDX); } void iWpu(x64emu_t *emu, uintptr_t fcn) { iWpu_t fn = (iWpu_t)fcn; R_RAX=(int32_t)fn((void*)R_RCX, (uint32_t)R_RDX); } void iWpf(x64emu_t *emu, uintptr_t fcn) { iWpf_t fn = (iWpf_t)fcn; R_RAX=(int32_t)fn((void*)R_RCX, emu->xmm[1].f[0]); } |