about summary refs log tree commit diff stats
path: root/src/wrapped
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2024-08-10 20:04:47 +0200
committerptitSeb <sebastien.chev@gmail.com>2024-08-10 20:04:56 +0200
commit3760be946f98f1580d06f397f38b6f7f2c19147e (patch)
tree875ac97714ed635b8388f89e8c26e34f762d88cd /src/wrapped
parent7db74b84cf396987f720ca08932950e8ea46aa68 (diff)
downloadbox64-3760be946f98f1580d06f397f38b6f7f2c19147e.tar.gz
box64-3760be946f98f1580d06f397f38b6f7f2c19147e.zip
[WRAPPER] Wrapped libdrm_amdgpu.so.1
Diffstat (limited to 'src/wrapped')
-rw-r--r--src/wrapped/generated/functions_list.txt15
-rw-r--r--src/wrapped/generated/wrappedlibdrmamdgpudefs.h8
-rw-r--r--src/wrapped/generated/wrappedlibdrmamdgputypes.h17
-rw-r--r--src/wrapped/generated/wrappedlibdrmamdgpuundefs.h8
-rw-r--r--src/wrapped/generated/wrapper.c39
-rw-r--r--src/wrapped/generated/wrapper.h14
-rw-r--r--src/wrapped/wrappedlibdrmamdgpu.c30
-rw-r--r--src/wrapped/wrappedlibdrmamdgpu_private.h88
8 files changed, 219 insertions, 0 deletions
diff --git a/src/wrapped/generated/functions_list.txt b/src/wrapped/generated/functions_list.txt
index 3e3b72f8..f14c7c14 100644
--- a/src/wrapped/generated/functions_list.txt
+++ b/src/wrapped/generated/functions_list.txt
@@ -1033,6 +1033,7 @@
 #() iFpuuL
 #() iFpuup
 #() iFpuUp
+#() iFpuLi
 #() iFpuLL
 #() iFpuLp
 #() iFpupi
@@ -1062,6 +1063,7 @@
 #() iFpLLL
 #() iFpLLp
 #() iFpLpi
+#() iFpLpu
 #() iFpLpf
 #() iFpLpd
 #() iFpLpD
@@ -1526,6 +1528,7 @@
 #() iFiiipu
 #() iFiiipp
 #() iFiiupp
+#() iFiippp
 #() iFiuuuu
 #() iFiuuup
 #() iFiuLip
@@ -1581,6 +1584,7 @@
 #() iFpuupp
 #() iFpulup
 #() iFpulpp
+#() iFpuLup
 #() iFpuLpL
 #() iFpuLpp
 #() iFpupui
@@ -1636,6 +1640,7 @@
 #() iFpppii
 #() iFpppip
 #() iFpppui
+#() iFpppuu
 #() iFpppup
 #() iFpppUi
 #() iFpppLi
@@ -1929,6 +1934,7 @@
 #() vFpdddii
 #() vFpddddd
 #() vFpddddp
+#() vFpLLLLu
 #() vFpLpLLL
 #() vFppiiii
 #() vFppiiip
@@ -2026,6 +2032,7 @@
 #() iFpWipip
 #() iFpWpppp
 #() iFpuiCpp
+#() iFpuiLpp
 #() iFpuippp
 #() iFpuuuuu
 #() iFpuuuup
@@ -2034,6 +2041,7 @@
 #() iFpuuLpp
 #() iFpuupuu
 #() iFpuuppp
+#() iFpuLuLu
 #() iFpuLLpp
 #() iFpupuui
 #() iFpupLpL
@@ -2050,6 +2058,7 @@
 #() iFpLuipp
 #() iFpLuupp
 #() iFpLupip
+#() iFpLLLLu
 #() iFpLLLLL
 #() iFpLLppp
 #() iFpLpipi
@@ -2070,8 +2079,10 @@
 #() iFppippp
 #() iFppIppp
 #() iFppuiii
+#() iFppuipp
 #() iFppuIII
 #() iFppuupp
+#() iFppulup
 #() iFppuLpp
 #() iFppupip
 #() iFppuppp
@@ -2414,6 +2425,7 @@
 #() iFppLiipp
 #() iFppLippp
 #() iFppLuuii
+#() iFppLLLLu
 #() iFppLpppp
 #() iFpppiiuu
 #() iFpppiiup
@@ -2421,6 +2433,7 @@
 #() iFpppippi
 #() iFpppippp
 #() iFpppuiii
+#() iFpppulup
 #() iFpppLppp
 #() iFppppilp
 #() iFppppipp
@@ -2623,6 +2636,7 @@
 #() iFpuupuupp
 #() iFpuuppiip
 #() iFpuuppppp
+#() iFpuLLLppL
 #() iFpupppppp
 #() iFpUuuLpUu
 #() iFpduuulul
@@ -4431,6 +4445,7 @@ wrappedlibdl:
 wrappedlibdrm:
 - vFpV:
   - drmMsg
+wrappedlibdrmamdgpu:
 wrappedlibegl:
 - pFp:
   - eglGetProcAddress
diff --git a/src/wrapped/generated/wrappedlibdrmamdgpudefs.h b/src/wrapped/generated/wrappedlibdrmamdgpudefs.h
new file mode 100644
index 00000000..bf8f9499
--- /dev/null
+++ b/src/wrapped/generated/wrappedlibdrmamdgpudefs.h
@@ -0,0 +1,8 @@
+/*******************************************************************
+ * File automatically generated by rebuild_wrappers.py (v2.4.0.21) *
+ *******************************************************************/
+#ifndef __wrappedlibdrmamdgpuDEFS_H_
+#define __wrappedlibdrmamdgpuDEFS_H_
+
+
+#endif // __wrappedlibdrmamdgpuDEFS_H_
diff --git a/src/wrapped/generated/wrappedlibdrmamdgputypes.h b/src/wrapped/generated/wrappedlibdrmamdgputypes.h
new file mode 100644
index 00000000..7ab8dd91
--- /dev/null
+++ b/src/wrapped/generated/wrappedlibdrmamdgputypes.h
@@ -0,0 +1,17 @@
+/*******************************************************************
+ * File automatically generated by rebuild_wrappers.py (v2.4.0.21) *
+ *******************************************************************/
+#ifndef __wrappedlibdrmamdgpuTYPES_H_
+#define __wrappedlibdrmamdgpuTYPES_H_
+
+#ifndef LIBNAME
+#error You should only #include this file inside a wrapped*.c file
+#endif
+#ifndef ADDED_FUNCTIONS
+#define ADDED_FUNCTIONS() 
+#endif
+
+
+#define SUPER() ADDED_FUNCTIONS()
+
+#endif // __wrappedlibdrmamdgpuTYPES_H_
diff --git a/src/wrapped/generated/wrappedlibdrmamdgpuundefs.h b/src/wrapped/generated/wrappedlibdrmamdgpuundefs.h
new file mode 100644
index 00000000..7cc76dfb
--- /dev/null
+++ b/src/wrapped/generated/wrappedlibdrmamdgpuundefs.h
@@ -0,0 +1,8 @@
+/*******************************************************************
+ * File automatically generated by rebuild_wrappers.py (v2.4.0.21) *
+ *******************************************************************/
+#ifndef __wrappedlibdrmamdgpuUNDEFS_H_
+#define __wrappedlibdrmamdgpuUNDEFS_H_
+
+
+#endif // __wrappedlibdrmamdgpuUNDEFS_H_
diff --git a/src/wrapped/generated/wrapper.c b/src/wrapped/generated/wrapper.c
index 19cb117e..5a9620c1 100644
--- a/src/wrapped/generated/wrapper.c
+++ b/src/wrapped/generated/wrapper.c
@@ -1071,6 +1071,7 @@ typedef int32_t (*iFpuul_t)(void*, uint32_t, uint32_t, intptr_t);
 typedef int32_t (*iFpuuL_t)(void*, uint32_t, uint32_t, uintptr_t);
 typedef int32_t (*iFpuup_t)(void*, uint32_t, uint32_t, void*);
 typedef int32_t (*iFpuUp_t)(void*, uint32_t, uint64_t, void*);
+typedef int32_t (*iFpuLi_t)(void*, uint32_t, uintptr_t, int32_t);
 typedef int32_t (*iFpuLL_t)(void*, uint32_t, uintptr_t, uintptr_t);
 typedef int32_t (*iFpuLp_t)(void*, uint32_t, uintptr_t, void*);
 typedef int32_t (*iFpupi_t)(void*, uint32_t, void*, int32_t);
@@ -1100,6 +1101,7 @@ typedef int32_t (*iFpLLu_t)(void*, uintptr_t, uintptr_t, uint32_t);
 typedef int32_t (*iFpLLL_t)(void*, uintptr_t, uintptr_t, uintptr_t);
 typedef int32_t (*iFpLLp_t)(void*, uintptr_t, uintptr_t, void*);
 typedef int32_t (*iFpLpi_t)(void*, uintptr_t, void*, int32_t);
+typedef int32_t (*iFpLpu_t)(void*, uintptr_t, void*, uint32_t);
 typedef int32_t (*iFpLpf_t)(void*, uintptr_t, void*, float);
 typedef int32_t (*iFpLpd_t)(void*, uintptr_t, void*, double);
 typedef int32_t (*iFpLpD_t)(void*, uintptr_t, void*, long double);
@@ -1564,6 +1566,7 @@ typedef int32_t (*iFEpppA_t)(x64emu_t*, void*, void*, void*, void*);
 typedef int32_t (*iFiiipu_t)(int32_t, int32_t, int32_t, void*, uint32_t);
 typedef int32_t (*iFiiipp_t)(int32_t, int32_t, int32_t, void*, void*);
 typedef int32_t (*iFiiupp_t)(int32_t, int32_t, uint32_t, void*, void*);
+typedef int32_t (*iFiippp_t)(int32_t, int32_t, void*, void*, void*);
 typedef int32_t (*iFiuuuu_t)(int32_t, uint32_t, uint32_t, uint32_t, uint32_t);
 typedef int32_t (*iFiuuup_t)(int32_t, uint32_t, uint32_t, uint32_t, void*);
 typedef int32_t (*iFiuLip_t)(int32_t, uint32_t, uintptr_t, int32_t, void*);
@@ -1619,6 +1622,7 @@ typedef int32_t (*iFpuuLp_t)(void*, uint32_t, uint32_t, uintptr_t, void*);
 typedef int32_t (*iFpuupp_t)(void*, uint32_t, uint32_t, void*, void*);
 typedef int32_t (*iFpulup_t)(void*, uint32_t, intptr_t, uint32_t, void*);
 typedef int32_t (*iFpulpp_t)(void*, uint32_t, intptr_t, void*, void*);
+typedef int32_t (*iFpuLup_t)(void*, uint32_t, uintptr_t, uint32_t, void*);
 typedef int32_t (*iFpuLpL_t)(void*, uint32_t, uintptr_t, void*, uintptr_t);
 typedef int32_t (*iFpuLpp_t)(void*, uint32_t, uintptr_t, void*, void*);
 typedef int32_t (*iFpupui_t)(void*, uint32_t, void*, uint32_t, int32_t);
@@ -1674,6 +1678,7 @@ typedef int32_t (*iFppLpp_t)(void*, void*, uintptr_t, void*, void*);
 typedef int32_t (*iFpppii_t)(void*, void*, void*, int32_t, int32_t);
 typedef int32_t (*iFpppip_t)(void*, void*, void*, int32_t, void*);
 typedef int32_t (*iFpppui_t)(void*, void*, void*, uint32_t, int32_t);
+typedef int32_t (*iFpppuu_t)(void*, void*, void*, uint32_t, uint32_t);
 typedef int32_t (*iFpppup_t)(void*, void*, void*, uint32_t, void*);
 typedef int32_t (*iFpppUi_t)(void*, void*, void*, uint64_t, int32_t);
 typedef int32_t (*iFpppLi_t)(void*, void*, void*, uintptr_t, int32_t);
@@ -1967,6 +1972,7 @@ typedef void (*vFpUUiup_t)(void*, uint64_t, uint64_t, int32_t, uint32_t, void*);
 typedef void (*vFpdddii_t)(void*, double, double, double, int32_t, int32_t);
 typedef void (*vFpddddd_t)(void*, double, double, double, double, double);
 typedef void (*vFpddddp_t)(void*, double, double, double, double, void*);
+typedef void (*vFpLLLLu_t)(void*, uintptr_t, uintptr_t, uintptr_t, uintptr_t, uint32_t);
 typedef void (*vFpLpLLL_t)(void*, uintptr_t, void*, uintptr_t, uintptr_t, uintptr_t);
 typedef void (*vFppiiii_t)(void*, void*, int32_t, int32_t, int32_t, int32_t);
 typedef void (*vFppiiip_t)(void*, void*, int32_t, int32_t, int32_t, void*);
@@ -2064,6 +2070,7 @@ typedef int32_t (*iFpCpipu_t)(void*, uint8_t, void*, int32_t, void*, uint32_t);
 typedef int32_t (*iFpWipip_t)(void*, uint16_t, int32_t, void*, int32_t, void*);
 typedef int32_t (*iFpWpppp_t)(void*, uint16_t, void*, void*, void*, void*);
 typedef int32_t (*iFpuiCpp_t)(void*, uint32_t, int32_t, uint8_t, void*, void*);
+typedef int32_t (*iFpuiLpp_t)(void*, uint32_t, int32_t, uintptr_t, void*, void*);
 typedef int32_t (*iFpuippp_t)(void*, uint32_t, int32_t, void*, void*, void*);
 typedef int32_t (*iFpuuuuu_t)(void*, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t);
 typedef int32_t (*iFpuuuup_t)(void*, uint32_t, uint32_t, uint32_t, uint32_t, void*);
@@ -2072,6 +2079,7 @@ typedef int32_t (*iFpuuupp_t)(void*, uint32_t, uint32_t, uint32_t, void*, void*)
 typedef int32_t (*iFpuuLpp_t)(void*, uint32_t, uint32_t, uintptr_t, void*, void*);
 typedef int32_t (*iFpuupuu_t)(void*, uint32_t, uint32_t, void*, uint32_t, uint32_t);
 typedef int32_t (*iFpuuppp_t)(void*, uint32_t, uint32_t, void*, void*, void*);
+typedef int32_t (*iFpuLuLu_t)(void*, uint32_t, uintptr_t, uint32_t, uintptr_t, uint32_t);
 typedef int32_t (*iFpuLLpp_t)(void*, uint32_t, uintptr_t, uintptr_t, void*, void*);
 typedef int32_t (*iFpupuui_t)(void*, uint32_t, void*, uint32_t, uint32_t, int32_t);
 typedef int32_t (*iFpupLpL_t)(void*, uint32_t, void*, uintptr_t, void*, uintptr_t);
@@ -2088,6 +2096,7 @@ typedef int32_t (*iFpLipLu_t)(void*, uintptr_t, int32_t, void*, uintptr_t, uint3
 typedef int32_t (*iFpLuipp_t)(void*, uintptr_t, uint32_t, int32_t, void*, void*);
 typedef int32_t (*iFpLuupp_t)(void*, uintptr_t, uint32_t, uint32_t, void*, void*);
 typedef int32_t (*iFpLupip_t)(void*, uintptr_t, uint32_t, void*, int32_t, void*);
+typedef int32_t (*iFpLLLLu_t)(void*, uintptr_t, uintptr_t, uintptr_t, uintptr_t, uint32_t);
 typedef int32_t (*iFpLLLLL_t)(void*, uintptr_t, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
 typedef int32_t (*iFpLLppp_t)(void*, uintptr_t, uintptr_t, void*, void*, void*);
 typedef int32_t (*iFpLpipi_t)(void*, uintptr_t, void*, int32_t, void*, int32_t);
@@ -2108,8 +2117,10 @@ typedef int32_t (*iFppippu_t)(void*, void*, int32_t, void*, void*, uint32_t);
 typedef int32_t (*iFppippp_t)(void*, void*, int32_t, void*, void*, void*);
 typedef int32_t (*iFppIppp_t)(void*, void*, int64_t, void*, void*, void*);
 typedef int32_t (*iFppuiii_t)(void*, void*, uint32_t, int32_t, int32_t, int32_t);
+typedef int32_t (*iFppuipp_t)(void*, void*, uint32_t, int32_t, void*, void*);
 typedef int32_t (*iFppuIII_t)(void*, void*, uint32_t, int64_t, int64_t, int64_t);
 typedef int32_t (*iFppuupp_t)(void*, void*, uint32_t, uint32_t, void*, void*);
+typedef int32_t (*iFppulup_t)(void*, void*, uint32_t, intptr_t, uint32_t, void*);
 typedef int32_t (*iFppuLpp_t)(void*, void*, uint32_t, uintptr_t, void*, void*);
 typedef int32_t (*iFppupip_t)(void*, void*, uint32_t, void*, int32_t, void*);
 typedef int32_t (*iFppuppp_t)(void*, void*, uint32_t, void*, void*, void*);
@@ -2452,6 +2463,7 @@ typedef int32_t (*iFppliupp_t)(void*, void*, intptr_t, int32_t, uint32_t, void*,
 typedef int32_t (*iFppLiipp_t)(void*, void*, uintptr_t, int32_t, int32_t, void*, void*);
 typedef int32_t (*iFppLippp_t)(void*, void*, uintptr_t, int32_t, void*, void*, void*);
 typedef int32_t (*iFppLuuii_t)(void*, void*, uintptr_t, uint32_t, uint32_t, int32_t, int32_t);
+typedef int32_t (*iFppLLLLu_t)(void*, void*, uintptr_t, uintptr_t, uintptr_t, uintptr_t, uint32_t);
 typedef int32_t (*iFppLpppp_t)(void*, void*, uintptr_t, void*, void*, void*, void*);
 typedef int32_t (*iFpppiiuu_t)(void*, void*, void*, int32_t, int32_t, uint32_t, uint32_t);
 typedef int32_t (*iFpppiiup_t)(void*, void*, void*, int32_t, int32_t, uint32_t, void*);
@@ -2459,6 +2471,7 @@ typedef int32_t (*iFpppiuwu_t)(void*, void*, void*, int32_t, uint32_t, int16_t,
 typedef int32_t (*iFpppippi_t)(void*, void*, void*, int32_t, void*, void*, int32_t);
 typedef int32_t (*iFpppippp_t)(void*, void*, void*, int32_t, void*, void*, void*);
 typedef int32_t (*iFpppuiii_t)(void*, void*, void*, uint32_t, int32_t, int32_t, int32_t);
+typedef int32_t (*iFpppulup_t)(void*, void*, void*, uint32_t, intptr_t, uint32_t, void*);
 typedef int32_t (*iFpppLppp_t)(void*, void*, void*, uintptr_t, void*, void*, void*);
 typedef int32_t (*iFppppilp_t)(void*, void*, void*, void*, int32_t, intptr_t, void*);
 typedef int32_t (*iFppppipp_t)(void*, void*, void*, void*, int32_t, void*, void*);
@@ -2661,6 +2674,7 @@ typedef int32_t (*iFpuuupupu_t)(void*, uint32_t, uint32_t, uint32_t, void*, uint
 typedef int32_t (*iFpuupuupp_t)(void*, uint32_t, uint32_t, void*, uint32_t, uint32_t, void*, void*);
 typedef int32_t (*iFpuuppiip_t)(void*, uint32_t, uint32_t, void*, void*, int32_t, int32_t, void*);
 typedef int32_t (*iFpuuppppp_t)(void*, uint32_t, uint32_t, void*, void*, void*, void*, void*);
+typedef int32_t (*iFpuLLLppL_t)(void*, uint32_t, uintptr_t, uintptr_t, uintptr_t, void*, void*, uintptr_t);
 typedef int32_t (*iFpupppppp_t)(void*, uint32_t, void*, void*, void*, void*, void*, void*);
 typedef int32_t (*iFpUuuLpUu_t)(void*, uint64_t, uint32_t, uint32_t, uintptr_t, void*, uint64_t, uint32_t);
 typedef int32_t (*iFpduuulul_t)(void*, double, uint32_t, uint32_t, uint32_t, intptr_t, uint32_t, intptr_t);
@@ -4211,6 +4225,7 @@ void iFpuul(x64emu_t *emu, uintptr_t fcn) { iFpuul_t fn = (iFpuul_t)fcn; R_RAX=(
 void iFpuuL(x64emu_t *emu, uintptr_t fcn) { iFpuuL_t fn = (iFpuuL_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uintptr_t)R_RCX); }
 void iFpuup(x64emu_t *emu, uintptr_t fcn) { iFpuup_t fn = (iFpuup_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (void*)R_RCX); }
 void iFpuUp(x64emu_t *emu, uintptr_t fcn) { iFpuUp_t fn = (iFpuUp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint64_t)R_RDX, (void*)R_RCX); }
+void iFpuLi(x64emu_t *emu, uintptr_t fcn) { iFpuLi_t fn = (iFpuLi_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uintptr_t)R_RDX, (int32_t)R_RCX); }
 void iFpuLL(x64emu_t *emu, uintptr_t fcn) { iFpuLL_t fn = (iFpuLL_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uintptr_t)R_RDX, (uintptr_t)R_RCX); }
 void iFpuLp(x64emu_t *emu, uintptr_t fcn) { iFpuLp_t fn = (iFpuLp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX); }
 void iFpupi(x64emu_t *emu, uintptr_t fcn) { iFpupi_t fn = (iFpupi_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (int32_t)R_RCX); }
@@ -4240,6 +4255,7 @@ void iFpLLu(x64emu_t *emu, uintptr_t fcn) { iFpLLu_t fn = (iFpLLu_t)fcn; R_RAX=(
 void iFpLLL(x64emu_t *emu, uintptr_t fcn) { iFpLLL_t fn = (iFpLLL_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (uintptr_t)R_RDX, (uintptr_t)R_RCX); }
 void iFpLLp(x64emu_t *emu, uintptr_t fcn) { iFpLLp_t fn = (iFpLLp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX); }
 void iFpLpi(x64emu_t *emu, uintptr_t fcn) { iFpLpi_t fn = (iFpLpi_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX, (int32_t)R_RCX); }
+void iFpLpu(x64emu_t *emu, uintptr_t fcn) { iFpLpu_t fn = (iFpLpu_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX, (uint32_t)R_RCX); }
 void iFpLpf(x64emu_t *emu, uintptr_t fcn) { iFpLpf_t fn = (iFpLpf_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX, emu->xmm[0].f[0]); }
 void iFpLpd(x64emu_t *emu, uintptr_t fcn) { iFpLpd_t fn = (iFpLpd_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX, emu->xmm[0].d[0]); }
 void iFpLpD(x64emu_t *emu, uintptr_t fcn) { iFpLpD_t fn = (iFpLpD_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX, LD2localLD((void*)(R_RSP + 8))); }
@@ -4704,6 +4720,7 @@ void iFEpppA(x64emu_t *emu, uintptr_t fcn) { iFEpppA_t fn = (iFEpppA_t)fcn; R_RA
 void iFiiipu(x64emu_t *emu, uintptr_t fcn) { iFiiipu_t fn = (iFiiipu_t)fcn; R_RAX=(int32_t)fn((int32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (uint32_t)R_R8); }
 void iFiiipp(x64emu_t *emu, uintptr_t fcn) { iFiiipp_t fn = (iFiiipp_t)fcn; R_RAX=(int32_t)fn((int32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (void*)R_R8); }
 void iFiiupp(x64emu_t *emu, uintptr_t fcn) { iFiiupp_t fn = (iFiiupp_t)fcn; R_RAX=(int32_t)fn((int32_t)R_RDI, (int32_t)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (void*)R_R8); }
+void iFiippp(x64emu_t *emu, uintptr_t fcn) { iFiippp_t fn = (iFiippp_t)fcn; R_RAX=(int32_t)fn((int32_t)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); }
 void iFiuuuu(x64emu_t *emu, uintptr_t fcn) { iFiuuuu_t fn = (iFiuuuu_t)fcn; R_RAX=(int32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8); }
 void iFiuuup(x64emu_t *emu, uintptr_t fcn) { iFiuuup_t fn = (iFiuuup_t)fcn; R_RAX=(int32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8); }
 void iFiuLip(x64emu_t *emu, uintptr_t fcn) { iFiuLip_t fn = (iFiuLip_t)fcn; R_RAX=(int32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (uintptr_t)R_RDX, (int32_t)R_RCX, (void*)R_R8); }
@@ -4759,6 +4776,7 @@ void iFpuuLp(x64emu_t *emu, uintptr_t fcn) { iFpuuLp_t fn = (iFpuuLp_t)fcn; R_RA
 void iFpuupp(x64emu_t *emu, uintptr_t fcn) { iFpuupp_t fn = (iFpuupp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (void*)R_R8); }
 void iFpulup(x64emu_t *emu, uintptr_t fcn) { iFpulup_t fn = (iFpulup_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (intptr_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8); }
 void iFpulpp(x64emu_t *emu, uintptr_t fcn) { iFpulpp_t fn = (iFpulpp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (intptr_t)R_RDX, (void*)R_RCX, (void*)R_R8); }
+void iFpuLup(x64emu_t *emu, uintptr_t fcn) { iFpuLup_t fn = (iFpuLup_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uintptr_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8); }
 void iFpuLpL(x64emu_t *emu, uintptr_t fcn) { iFpuLpL_t fn = (iFpuLpL_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (uintptr_t)R_R8); }
 void iFpuLpp(x64emu_t *emu, uintptr_t fcn) { iFpuLpp_t fn = (iFpuLpp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (void*)R_R8); }
 void iFpupui(x64emu_t *emu, uintptr_t fcn) { iFpupui_t fn = (iFpupui_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (uint32_t)R_RCX, (int32_t)R_R8); }
@@ -4814,6 +4832,7 @@ void iFppLpp(x64emu_t *emu, uintptr_t fcn) { iFppLpp_t fn = (iFppLpp_t)fcn; R_RA
 void iFpppii(x64emu_t *emu, uintptr_t fcn) { iFpppii_t fn = (iFpppii_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (int32_t)R_R8); }
 void iFpppip(x64emu_t *emu, uintptr_t fcn) { iFpppip_t fn = (iFpppip_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (void*)R_R8); }
 void iFpppui(x64emu_t *emu, uintptr_t fcn) { iFpppui_t fn = (iFpppui_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint32_t)R_RCX, (int32_t)R_R8); }
+void iFpppuu(x64emu_t *emu, uintptr_t fcn) { iFpppuu_t fn = (iFpppuu_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8); }
 void iFpppup(x64emu_t *emu, uintptr_t fcn) { iFpppup_t fn = (iFpppup_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint32_t)R_RCX, (void*)R_R8); }
 void iFpppUi(x64emu_t *emu, uintptr_t fcn) { iFpppUi_t fn = (iFpppUi_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX, (int32_t)R_R8); }
 void iFpppLi(x64emu_t *emu, uintptr_t fcn) { iFpppLi_t fn = (iFpppLi_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX, (int32_t)R_R8); }
@@ -5107,6 +5126,7 @@ void vFpUUiup(x64emu_t *emu, uintptr_t fcn) { vFpUUiup_t fn = (vFpUUiup_t)fcn; f
 void vFpdddii(x64emu_t *emu, uintptr_t fcn) { vFpdddii_t fn = (vFpdddii_t)fcn; fn((void*)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0], (int32_t)R_RSI, (int32_t)R_RDX); }
 void vFpddddd(x64emu_t *emu, uintptr_t fcn) { vFpddddd_t fn = (vFpddddd_t)fcn; fn((void*)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0], emu->xmm[3].d[0], emu->xmm[4].d[0]); }
 void vFpddddp(x64emu_t *emu, uintptr_t fcn) { vFpddddp_t fn = (vFpddddp_t)fcn; fn((void*)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0], emu->xmm[3].d[0], (void*)R_RSI); }
+void vFpLLLLu(x64emu_t *emu, uintptr_t fcn) { vFpLLLLu_t fn = (vFpLLLLu_t)fcn; fn((void*)R_RDI, (uintptr_t)R_RSI, (uintptr_t)R_RDX, (uintptr_t)R_RCX, (uintptr_t)R_R8, (uint32_t)R_R9); }
 void vFpLpLLL(x64emu_t *emu, uintptr_t fcn) { vFpLpLLL_t fn = (vFpLpLLL_t)fcn; fn((void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX, (uintptr_t)R_R8, (uintptr_t)R_R9); }
 void vFppiiii(x64emu_t *emu, uintptr_t fcn) { vFppiiii_t fn = (vFppiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9); }
 void vFppiiip(x64emu_t *emu, uintptr_t fcn) { vFppiiip_t fn = (vFppiiip_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (void*)R_R9); }
@@ -5204,6 +5224,7 @@ void iFpCpipu(x64emu_t *emu, uintptr_t fcn) { iFpCpipu_t fn = (iFpCpipu_t)fcn; R
 void iFpWipip(x64emu_t *emu, uintptr_t fcn) { iFpWipip_t fn = (iFpWipip_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint16_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (int32_t)R_R8, (void*)R_R9); }
 void iFpWpppp(x64emu_t *emu, uintptr_t fcn) { iFpWpppp_t fn = (iFpWpppp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint16_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); }
 void iFpuiCpp(x64emu_t *emu, uintptr_t fcn) { iFpuiCpp_t fn = (iFpuiCpp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX, (uint8_t)R_RCX, (void*)R_R8, (void*)R_R9); }
+void iFpuiLpp(x64emu_t *emu, uintptr_t fcn) { iFpuiLpp_t fn = (iFpuiLpp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX, (uintptr_t)R_RCX, (void*)R_R8, (void*)R_R9); }
 void iFpuippp(x64emu_t *emu, uintptr_t fcn) { iFpuippp_t fn = (iFpuippp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); }
 void iFpuuuuu(x64emu_t *emu, uintptr_t fcn) { iFpuuuuu_t fn = (iFpuuuuu_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9); }
 void iFpuuuup(x64emu_t *emu, uintptr_t fcn) { iFpuuuup_t fn = (iFpuuuup_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (void*)R_R9); }
@@ -5212,6 +5233,7 @@ void iFpuuupp(x64emu_t *emu, uintptr_t fcn) { iFpuuupp_t fn = (iFpuuupp_t)fcn; R
 void iFpuuLpp(x64emu_t *emu, uintptr_t fcn) { iFpuuLpp_t fn = (iFpuuLpp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uintptr_t)R_RCX, (void*)R_R8, (void*)R_R9); }
 void iFpuupuu(x64emu_t *emu, uintptr_t fcn) { iFpuupuu_t fn = (iFpuupuu_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9); }
 void iFpuuppp(x64emu_t *emu, uintptr_t fcn) { iFpuuppp_t fn = (iFpuuppp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); }
+void iFpuLuLu(x64emu_t *emu, uintptr_t fcn) { iFpuLuLu_t fn = (iFpuLuLu_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uintptr_t)R_RDX, (uint32_t)R_RCX, (uintptr_t)R_R8, (uint32_t)R_R9); }
 void iFpuLLpp(x64emu_t *emu, uintptr_t fcn) { iFpuLLpp_t fn = (iFpuLLpp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uintptr_t)R_RDX, (uintptr_t)R_RCX, (void*)R_R8, (void*)R_R9); }
 void iFpupuui(x64emu_t *emu, uintptr_t fcn) { iFpupuui_t fn = (iFpupuui_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (int32_t)R_R9); }
 void iFpupLpL(x64emu_t *emu, uintptr_t fcn) { iFpupLpL_t fn = (iFpupLpL_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX, (void*)R_R8, (uintptr_t)R_R9); }
@@ -5228,6 +5250,7 @@ void iFpLipLu(x64emu_t *emu, uintptr_t fcn) { iFpLipLu_t fn = (iFpLipLu_t)fcn; R
 void iFpLuipp(x64emu_t *emu, uintptr_t fcn) { iFpLuipp_t fn = (iFpLuipp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (uint32_t)R_RDX, (int32_t)R_RCX, (void*)R_R8, (void*)R_R9); }
 void iFpLuupp(x64emu_t *emu, uintptr_t fcn) { iFpLuupp_t fn = (iFpLuupp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8, (void*)R_R9); }
 void iFpLupip(x64emu_t *emu, uintptr_t fcn) { iFpLupip_t fn = (iFpLupip_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (int32_t)R_R8, (void*)R_R9); }
+void iFpLLLLu(x64emu_t *emu, uintptr_t fcn) { iFpLLLLu_t fn = (iFpLLLLu_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (uintptr_t)R_RDX, (uintptr_t)R_RCX, (uintptr_t)R_R8, (uint32_t)R_R9); }
 void iFpLLLLL(x64emu_t *emu, uintptr_t fcn) { iFpLLLLL_t fn = (iFpLLLLL_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (uintptr_t)R_RDX, (uintptr_t)R_RCX, (uintptr_t)R_R8, (uintptr_t)R_R9); }
 void iFpLLppp(x64emu_t *emu, uintptr_t fcn) { iFpLLppp_t fn = (iFpLLppp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); }
 void iFpLpipi(x64emu_t *emu, uintptr_t fcn) { iFpLpipi_t fn = (iFpLpipi_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (void*)R_R8, (int32_t)R_R9); }
@@ -5248,8 +5271,10 @@ void iFppippu(x64emu_t *emu, uintptr_t fcn) { iFppippu_t fn = (iFppippu_t)fcn; R
 void iFppippp(x64emu_t *emu, uintptr_t fcn) { iFppippp_t fn = (iFppippp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); }
 void iFppIppp(x64emu_t *emu, uintptr_t fcn) { iFppIppp_t fn = (iFppIppp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); }
 void iFppuiii(x64emu_t *emu, uintptr_t fcn) { iFppuiii_t fn = (iFppuiii_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9); }
+void iFppuipp(x64emu_t *emu, uintptr_t fcn) { iFppuipp_t fn = (iFppuipp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (int32_t)R_RCX, (void*)R_R8, (void*)R_R9); }
 void iFppuIII(x64emu_t *emu, uintptr_t fcn) { iFppuIII_t fn = (iFppuIII_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9); }
 void iFppuupp(x64emu_t *emu, uintptr_t fcn) { iFppuupp_t fn = (iFppuupp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8, (void*)R_R9); }
+void iFppulup(x64emu_t *emu, uintptr_t fcn) { iFppulup_t fn = (iFppulup_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (intptr_t)R_RCX, (uint32_t)R_R8, (void*)R_R9); }
 void iFppuLpp(x64emu_t *emu, uintptr_t fcn) { iFppuLpp_t fn = (iFppuLpp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (uintptr_t)R_RCX, (void*)R_R8, (void*)R_R9); }
 void iFppupip(x64emu_t *emu, uintptr_t fcn) { iFppupip_t fn = (iFppupip_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (int32_t)R_R8, (void*)R_R9); }
 void iFppuppp(x64emu_t *emu, uintptr_t fcn) { iFppuppp_t fn = (iFppuppp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); }
@@ -5592,6 +5617,7 @@ void iFppliupp(x64emu_t *emu, uintptr_t fcn) { iFppliupp_t fn = (iFppliupp_t)fcn
 void iFppLiipp(x64emu_t *emu, uintptr_t fcn) { iFppLiipp_t fn = (iFppLiipp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
 void iFppLippp(x64emu_t *emu, uintptr_t fcn) { iFppLippp_t fn = (iFppLippp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (int32_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
 void iFppLuuii(x64emu_t *emu, uintptr_t fcn) { iFppLuuii_t fn = (iFppLuuii_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8)); }
+void iFppLLLLu(x64emu_t *emu, uintptr_t fcn) { iFppLLLLu_t fn = (iFppLLLLu_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (uintptr_t)R_RCX, (uintptr_t)R_R8, (uintptr_t)R_R9, *(uint32_t*)(R_RSP + 8)); }
 void iFppLpppp(x64emu_t *emu, uintptr_t fcn) { iFppLpppp_t fn = (iFppLpppp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
 void iFpppiiuu(x64emu_t *emu, uintptr_t fcn) { iFpppiiuu_t fn = (iFpppiiuu_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (uint32_t)R_R9, *(uint32_t*)(R_RSP + 8)); }
 void iFpppiiup(x64emu_t *emu, uintptr_t fcn) { iFpppiiup_t fn = (iFpppiiup_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (uint32_t)R_R9, *(void**)(R_RSP + 8)); }
@@ -5599,6 +5625,7 @@ void iFpppiuwu(x64emu_t *emu, uintptr_t fcn) { iFpppiuwu_t fn = (iFpppiuwu_t)fcn
 void iFpppippi(x64emu_t *emu, uintptr_t fcn) { iFpppippi_t fn = (iFpppippi_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (void*)R_R8, (void*)R_R9, *(int32_t*)(R_RSP + 8)); }
 void iFpppippp(x64emu_t *emu, uintptr_t fcn) { iFpppippp_t fn = (iFpppippp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
 void iFpppuiii(x64emu_t *emu, uintptr_t fcn) { iFpppuiii_t fn = (iFpppuiii_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8)); }
+void iFpppulup(x64emu_t *emu, uintptr_t fcn) { iFpppulup_t fn = (iFpppulup_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint32_t)R_RCX, (intptr_t)R_R8, (uint32_t)R_R9, *(void**)(R_RSP + 8)); }
 void iFpppLppp(x64emu_t *emu, uintptr_t fcn) { iFpppLppp_t fn = (iFpppLppp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
 void iFppppilp(x64emu_t *emu, uintptr_t fcn) { iFppppilp_t fn = (iFppppilp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int32_t)R_R8, (intptr_t)R_R9, *(void**)(R_RSP + 8)); }
 void iFppppipp(x64emu_t *emu, uintptr_t fcn) { iFppppipp_t fn = (iFppppipp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int32_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
@@ -5801,6 +5828,7 @@ void iFpuuupupu(x64emu_t *emu, uintptr_t fcn) { iFpuuupupu_t fn = (iFpuuupupu_t)
 void iFpuupuupp(x64emu_t *emu, uintptr_t fcn) { iFpuupuupp_t fn = (iFpuupuupp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); }
 void iFpuuppiip(x64emu_t *emu, uintptr_t fcn) { iFpuuppiip_t fn = (iFpuuppiip_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (void*)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(void**)(R_RSP + 16)); }
 void iFpuuppppp(x64emu_t *emu, uintptr_t fcn) { iFpuuppppp_t fn = (iFpuuppppp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); }
+void iFpuLLLppL(x64emu_t *emu, uintptr_t fcn) { iFpuLLLppL_t fn = (iFpuLLLppL_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uintptr_t)R_RDX, (uintptr_t)R_RCX, (uintptr_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(uintptr_t*)(R_RSP + 16)); }
 void iFpupppppp(x64emu_t *emu, uintptr_t fcn) { iFpupppppp_t fn = (iFpupppppp_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); }
 void iFpUuuLpUu(x64emu_t *emu, uintptr_t fcn) { iFpUuuLpUu_t fn = (iFpUuuLpUu_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uintptr_t)R_R8, (void*)R_R9, *(uint64_t*)(R_RSP + 8), *(uint32_t*)(R_RSP + 16)); }
 void iFpduuulul(x64emu_t *emu, uintptr_t fcn) { iFpduuulul_t fn = (iFpduuulul_t)fcn; R_RAX=(int32_t)fn((void*)R_RDI, emu->xmm[0].d[0], (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (intptr_t)R_R8, (uint32_t)R_R9, *(intptr_t*)(R_RSP + 8)); }
@@ -7163,6 +7191,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFpuuL) return 1;
 	if (fun == &iFpuup) return 1;
 	if (fun == &iFpuUp) return 1;
+	if (fun == &iFpuLi) return 1;
 	if (fun == &iFpuLL) return 1;
 	if (fun == &iFpuLp) return 1;
 	if (fun == &iFpupi) return 1;
@@ -7191,6 +7220,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFpLLL) return 1;
 	if (fun == &iFpLLp) return 1;
 	if (fun == &iFpLpi) return 1;
+	if (fun == &iFpLpu) return 1;
 	if (fun == &iFpLpf) return 2;
 	if (fun == &iFpLpd) return 2;
 	if (fun == &iFpLpL) return 1;
@@ -7550,6 +7580,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFiiipu) return 1;
 	if (fun == &iFiiipp) return 1;
 	if (fun == &iFiiupp) return 1;
+	if (fun == &iFiippp) return 1;
 	if (fun == &iFiuuuu) return 1;
 	if (fun == &iFiuuup) return 1;
 	if (fun == &iFiuLip) return 1;
@@ -7605,6 +7636,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFpuupp) return 1;
 	if (fun == &iFpulup) return 1;
 	if (fun == &iFpulpp) return 1;
+	if (fun == &iFpuLup) return 1;
 	if (fun == &iFpuLpL) return 1;
 	if (fun == &iFpuLpp) return 1;
 	if (fun == &iFpupui) return 1;
@@ -7660,6 +7692,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFpppii) return 1;
 	if (fun == &iFpppip) return 1;
 	if (fun == &iFpppui) return 1;
+	if (fun == &iFpppuu) return 1;
 	if (fun == &iFpppup) return 1;
 	if (fun == &iFpppUi) return 1;
 	if (fun == &iFpppLi) return 1;
@@ -7889,6 +7922,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &vFpdddii) return 4;
 	if (fun == &vFpddddd) return 6;
 	if (fun == &vFpddddp) return 5;
+	if (fun == &vFpLLLLu) return 1;
 	if (fun == &vFpLpLLL) return 1;
 	if (fun == &vFppiiii) return 1;
 	if (fun == &vFppiiip) return 1;
@@ -7971,6 +8005,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFpWipip) return 1;
 	if (fun == &iFpWpppp) return 1;
 	if (fun == &iFpuiCpp) return 1;
+	if (fun == &iFpuiLpp) return 1;
 	if (fun == &iFpuippp) return 1;
 	if (fun == &iFpuuuuu) return 1;
 	if (fun == &iFpuuuup) return 1;
@@ -7979,6 +8014,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFpuuLpp) return 1;
 	if (fun == &iFpuupuu) return 1;
 	if (fun == &iFpuuppp) return 1;
+	if (fun == &iFpuLuLu) return 1;
 	if (fun == &iFpuLLpp) return 1;
 	if (fun == &iFpupuui) return 1;
 	if (fun == &iFpupLpL) return 1;
@@ -7995,6 +8031,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFpLuipp) return 1;
 	if (fun == &iFpLuupp) return 1;
 	if (fun == &iFpLupip) return 1;
+	if (fun == &iFpLLLLu) return 1;
 	if (fun == &iFpLLLLL) return 1;
 	if (fun == &iFpLLppp) return 1;
 	if (fun == &iFpLpipi) return 1;
@@ -8015,8 +8052,10 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFppippp) return 1;
 	if (fun == &iFppIppp) return 1;
 	if (fun == &iFppuiii) return 1;
+	if (fun == &iFppuipp) return 1;
 	if (fun == &iFppuIII) return 1;
 	if (fun == &iFppuupp) return 1;
+	if (fun == &iFppulup) return 1;
 	if (fun == &iFppuLpp) return 1;
 	if (fun == &iFppupip) return 1;
 	if (fun == &iFppuppp) return 1;
diff --git a/src/wrapped/generated/wrapper.h b/src/wrapped/generated/wrapper.h
index 44575ecd..9063346a 100644
--- a/src/wrapped/generated/wrapper.h
+++ b/src/wrapped/generated/wrapper.h
@@ -1071,6 +1071,7 @@ void iFpuul(x64emu_t *emu, uintptr_t fnc);
 void iFpuuL(x64emu_t *emu, uintptr_t fnc);
 void iFpuup(x64emu_t *emu, uintptr_t fnc);
 void iFpuUp(x64emu_t *emu, uintptr_t fnc);
+void iFpuLi(x64emu_t *emu, uintptr_t fnc);
 void iFpuLL(x64emu_t *emu, uintptr_t fnc);
 void iFpuLp(x64emu_t *emu, uintptr_t fnc);
 void iFpupi(x64emu_t *emu, uintptr_t fnc);
@@ -1100,6 +1101,7 @@ void iFpLLu(x64emu_t *emu, uintptr_t fnc);
 void iFpLLL(x64emu_t *emu, uintptr_t fnc);
 void iFpLLp(x64emu_t *emu, uintptr_t fnc);
 void iFpLpi(x64emu_t *emu, uintptr_t fnc);
+void iFpLpu(x64emu_t *emu, uintptr_t fnc);
 void iFpLpf(x64emu_t *emu, uintptr_t fnc);
 void iFpLpd(x64emu_t *emu, uintptr_t fnc);
 void iFpLpD(x64emu_t *emu, uintptr_t fnc);
@@ -1564,6 +1566,7 @@ void iFEpppA(x64emu_t *emu, uintptr_t fnc);
 void iFiiipu(x64emu_t *emu, uintptr_t fnc);
 void iFiiipp(x64emu_t *emu, uintptr_t fnc);
 void iFiiupp(x64emu_t *emu, uintptr_t fnc);
+void iFiippp(x64emu_t *emu, uintptr_t fnc);
 void iFiuuuu(x64emu_t *emu, uintptr_t fnc);
 void iFiuuup(x64emu_t *emu, uintptr_t fnc);
 void iFiuLip(x64emu_t *emu, uintptr_t fnc);
@@ -1619,6 +1622,7 @@ void iFpuuLp(x64emu_t *emu, uintptr_t fnc);
 void iFpuupp(x64emu_t *emu, uintptr_t fnc);
 void iFpulup(x64emu_t *emu, uintptr_t fnc);
 void iFpulpp(x64emu_t *emu, uintptr_t fnc);
+void iFpuLup(x64emu_t *emu, uintptr_t fnc);
 void iFpuLpL(x64emu_t *emu, uintptr_t fnc);
 void iFpuLpp(x64emu_t *emu, uintptr_t fnc);
 void iFpupui(x64emu_t *emu, uintptr_t fnc);
@@ -1674,6 +1678,7 @@ void iFppLpp(x64emu_t *emu, uintptr_t fnc);
 void iFpppii(x64emu_t *emu, uintptr_t fnc);
 void iFpppip(x64emu_t *emu, uintptr_t fnc);
 void iFpppui(x64emu_t *emu, uintptr_t fnc);
+void iFpppuu(x64emu_t *emu, uintptr_t fnc);
 void iFpppup(x64emu_t *emu, uintptr_t fnc);
 void iFpppUi(x64emu_t *emu, uintptr_t fnc);
 void iFpppLi(x64emu_t *emu, uintptr_t fnc);
@@ -1967,6 +1972,7 @@ void vFpUUiup(x64emu_t *emu, uintptr_t fnc);
 void vFpdddii(x64emu_t *emu, uintptr_t fnc);
 void vFpddddd(x64emu_t *emu, uintptr_t fnc);
 void vFpddddp(x64emu_t *emu, uintptr_t fnc);
+void vFpLLLLu(x64emu_t *emu, uintptr_t fnc);
 void vFpLpLLL(x64emu_t *emu, uintptr_t fnc);
 void vFppiiii(x64emu_t *emu, uintptr_t fnc);
 void vFppiiip(x64emu_t *emu, uintptr_t fnc);
@@ -2064,6 +2070,7 @@ void iFpCpipu(x64emu_t *emu, uintptr_t fnc);
 void iFpWipip(x64emu_t *emu, uintptr_t fnc);
 void iFpWpppp(x64emu_t *emu, uintptr_t fnc);
 void iFpuiCpp(x64emu_t *emu, uintptr_t fnc);
+void iFpuiLpp(x64emu_t *emu, uintptr_t fnc);
 void iFpuippp(x64emu_t *emu, uintptr_t fnc);
 void iFpuuuuu(x64emu_t *emu, uintptr_t fnc);
 void iFpuuuup(x64emu_t *emu, uintptr_t fnc);
@@ -2072,6 +2079,7 @@ void iFpuuupp(x64emu_t *emu, uintptr_t fnc);
 void iFpuuLpp(x64emu_t *emu, uintptr_t fnc);
 void iFpuupuu(x64emu_t *emu, uintptr_t fnc);
 void iFpuuppp(x64emu_t *emu, uintptr_t fnc);
+void iFpuLuLu(x64emu_t *emu, uintptr_t fnc);
 void iFpuLLpp(x64emu_t *emu, uintptr_t fnc);
 void iFpupuui(x64emu_t *emu, uintptr_t fnc);
 void iFpupLpL(x64emu_t *emu, uintptr_t fnc);
@@ -2088,6 +2096,7 @@ void iFpLipLu(x64emu_t *emu, uintptr_t fnc);
 void iFpLuipp(x64emu_t *emu, uintptr_t fnc);
 void iFpLuupp(x64emu_t *emu, uintptr_t fnc);
 void iFpLupip(x64emu_t *emu, uintptr_t fnc);
+void iFpLLLLu(x64emu_t *emu, uintptr_t fnc);
 void iFpLLLLL(x64emu_t *emu, uintptr_t fnc);
 void iFpLLppp(x64emu_t *emu, uintptr_t fnc);
 void iFpLpipi(x64emu_t *emu, uintptr_t fnc);
@@ -2108,8 +2117,10 @@ void iFppippu(x64emu_t *emu, uintptr_t fnc);
 void iFppippp(x64emu_t *emu, uintptr_t fnc);
 void iFppIppp(x64emu_t *emu, uintptr_t fnc);
 void iFppuiii(x64emu_t *emu, uintptr_t fnc);
+void iFppuipp(x64emu_t *emu, uintptr_t fnc);
 void iFppuIII(x64emu_t *emu, uintptr_t fnc);
 void iFppuupp(x64emu_t *emu, uintptr_t fnc);
+void iFppulup(x64emu_t *emu, uintptr_t fnc);
 void iFppuLpp(x64emu_t *emu, uintptr_t fnc);
 void iFppupip(x64emu_t *emu, uintptr_t fnc);
 void iFppuppp(x64emu_t *emu, uintptr_t fnc);
@@ -2452,6 +2463,7 @@ void iFppliupp(x64emu_t *emu, uintptr_t fnc);
 void iFppLiipp(x64emu_t *emu, uintptr_t fnc);
 void iFppLippp(x64emu_t *emu, uintptr_t fnc);
 void iFppLuuii(x64emu_t *emu, uintptr_t fnc);
+void iFppLLLLu(x64emu_t *emu, uintptr_t fnc);
 void iFppLpppp(x64emu_t *emu, uintptr_t fnc);
 void iFpppiiuu(x64emu_t *emu, uintptr_t fnc);
 void iFpppiiup(x64emu_t *emu, uintptr_t fnc);
@@ -2459,6 +2471,7 @@ void iFpppiuwu(x64emu_t *emu, uintptr_t fnc);
 void iFpppippi(x64emu_t *emu, uintptr_t fnc);
 void iFpppippp(x64emu_t *emu, uintptr_t fnc);
 void iFpppuiii(x64emu_t *emu, uintptr_t fnc);
+void iFpppulup(x64emu_t *emu, uintptr_t fnc);
 void iFpppLppp(x64emu_t *emu, uintptr_t fnc);
 void iFppppilp(x64emu_t *emu, uintptr_t fnc);
 void iFppppipp(x64emu_t *emu, uintptr_t fnc);
@@ -2661,6 +2674,7 @@ void iFpuuupupu(x64emu_t *emu, uintptr_t fnc);
 void iFpuupuupp(x64emu_t *emu, uintptr_t fnc);
 void iFpuuppiip(x64emu_t *emu, uintptr_t fnc);
 void iFpuuppppp(x64emu_t *emu, uintptr_t fnc);
+void iFpuLLLppL(x64emu_t *emu, uintptr_t fnc);
 void iFpupppppp(x64emu_t *emu, uintptr_t fnc);
 void iFpUuuLpUu(x64emu_t *emu, uintptr_t fnc);
 void iFpduuulul(x64emu_t *emu, uintptr_t fnc);
diff --git a/src/wrapped/wrappedlibdrmamdgpu.c b/src/wrapped/wrappedlibdrmamdgpu.c
new file mode 100644
index 00000000..4e58f5f5
--- /dev/null
+++ b/src/wrapped/wrappedlibdrmamdgpu.c
@@ -0,0 +1,30 @@
+#define _GNU_SOURCE         /* See feature_test_macros(7) */
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <dlfcn.h>
+
+#include "wrappedlibs.h"
+
+#include "debug.h"
+#include "wrapper.h"
+#include "bridge.h"
+#include "librarian/library_private.h"
+#include "x64emu.h"
+#include "emu/x64emu_private.h"
+#include "callback.h"
+#include "librarian.h"
+#include "box64context.h"
+#include "emu/x64emu_private.h"
+#include "myalign.h"
+
+const char* libdrmamdgpuName = "libdrm_amdgpu.so.1";
+#define LIBNAME libdrmamdgpu
+
+#define ADDED_FUNCTIONS()                   \
+
+//#include "generated/wrappedlibdrmamdgputypes.h"
+
+//#include "wrappercallback.h"
+
+#include "wrappedlib_init.h"
diff --git a/src/wrapped/wrappedlibdrmamdgpu_private.h b/src/wrapped/wrappedlibdrmamdgpu_private.h
new file mode 100644
index 00000000..42a5dbec
--- /dev/null
+++ b/src/wrapped/wrappedlibdrmamdgpu_private.h
@@ -0,0 +1,88 @@
+#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA))
+#error Meh....
+#endif
+
+GO(amdgpu_bo_alloc, iFppp)
+GO(amdgpu_bo_cpu_map, iFpp)
+GO(amdgpu_bo_cpu_unmap, iFp)
+GO(amdgpu_bo_export, iFpup)
+GO(amdgpu_bo_free, iFppp)
+GO(amdgpu_bo_import, iFpuup)
+GO(amdgpu_bo_inc_ref, vFp)
+GO(amdgpu_bo_list_create, iFpuppp)
+GO(amdgpu_bo_list_create_raw, iFpupp)
+GO(amdgpu_bo_list_destroy, iFp)
+GO(amdgpu_bo_list_destroy_raw, iFpupp)
+GO(amdgpu_bo_list_update, iFpupp)
+GO(amdgpu_bo_query_info, iFpp)
+GO(amdgpu_bo_set_metadata, iFpp)
+GO(amdgpu_bo_va_op, iFpLLLLu)
+GO(amdgpu_bo_va_op_raw, iFppLLLLu)
+GO(amdgpu_bo_wait_for_idle, iFpLp)
+GO(amdgpu_create_bo_from_user_mem, iFppLp)
+GO(amdgpu_cs_chunk_fence_info_to_data, vFpp)
+GO(amdgpu_cs_chunk_fence_to_dep, vFpp)
+GO(amdgpu_cs_create_semaphore, iFp)
+GO(amdgpu_cs_create_syncobj, iFpp)
+GO(amdgpu_cs_create_syncobj2, iFpup)
+GO(amdgpu_cs_ctx_create, iFpp)
+GO(amdgpu_cs_ctx_create2, iFpup)
+GO(amdgpu_cs_ctx_free, iFp)
+GO(amdgpu_cs_ctx_override_priority, iFppiu)
+GO(amdgpu_cs_ctx_stable_pstate, iFpuup)
+GO(amdgpu_cs_destroy_semaphore, iFp)
+GO(amdgpu_cs_destroy_syncobj, iFpu)
+GO(amdgpu_cs_export_syncobj, iFpup)
+GO(amdgpu_cs_fence_to_handle, iFppup)
+GO(amdgpu_cs_import_syncobj, iFpip)
+GO(amdgpu_cs_query_fence_status, iFpLLp)
+GO(amdgpu_cs_query_reset_state, iFppp)
+GO(amdgpu_cs_query_reset_state2, iFpp)
+GO(amdgpu_cs_signal_semaphore, iFpuuup)
+GO(amdgpu_cs_submit, iFpLpu)
+GO(amdgpu_cs_submit_raw, iFpppipp)
+GO(amdgpu_cs_submit_raw2, iFppuipp)
+GO(amdgpu_cs_syncobj_export_sync_file, iFpup)
+GO(amdgpu_cs_syncobj_export_sync_file2, iFpuLup)
+GO(amdgpu_cs_syncobj_import_sync_file, iFpui)
+GO(amdgpu_cs_syncobj_import_sync_file2, iFpuLi)
+GO(amdgpu_cs_syncobj_query, iFpppu)
+GO(amdgpu_cs_syncobj_query2, iFpppuu)
+GO(amdgpu_cs_syncobj_reset, iFppu)
+GO(amdgpu_cs_syncobj_signal, iFppu)
+GO(amdgpu_cs_syncobj_timeline_signal, iFpppu)
+GO(amdgpu_cs_syncobj_timeline_wait, iFpppulup)
+GO(amdgpu_cs_syncobj_transfer, iFpuLuLu)
+GO(amdgpu_cs_syncobj_wait, iFppulup)
+GO(amdgpu_cs_wait_fences, iFpuiLpp)
+GO(amdgpu_cs_wait_semaphore, iFpuuup)
+GO(amdgpu_device_deinitialize, iFp)
+GO(amdgpu_device_get_fd, iFp)
+GO(amdgpu_device_initialize, iFippp)
+GO(amdgpu_device_initialize2, iFiippp)
+GO(amdgpu_find_bo_by_cpu_mapping, iFppLpp)
+GO(amdgpu_get_marketing_name, pFp)
+GO(amdgpu_query_buffer_size_alignment, iFpp)
+GO(amdgpu_query_crtc_from_id, iFpup)
+GO(amdgpu_query_firmware_version, iFpuuupp)
+GO(amdgpu_query_gds_info, iFpp)
+GO(amdgpu_query_gpu_info, iFpp)
+GO(amdgpu_query_gpuvm_fault_info, iFpup)
+GO(amdgpu_query_heap_info, iFpuup)
+GO(amdgpu_query_hw_ip_count, iFpup)
+GO(amdgpu_query_hw_ip_info, iFpuup)
+GO(amdgpu_query_info, iFpuup)
+GO(amdgpu_query_sensor_info, iFpuup)
+GO(amdgpu_query_sw_info, iFpup)
+GO(amdgpu_query_video_caps_info, iFpuup)
+GO(amdgpu_read_mm_registers, iFpuuuup)
+GO(amdgpu_va_get_start_addr, LFp)
+GO(amdgpu_va_manager_alloc, pFv)
+GO(amdgpu_va_manager_deinit, vFp)
+GO(amdgpu_va_manager_init, vFpLLLLu)
+GO(amdgpu_va_range_alloc, iFpuLLLppL)
+GO(amdgpu_va_range_alloc2, iFpuLLLppL)
+GO(amdgpu_va_range_free, iFp)
+GO(amdgpu_va_range_query, iFpupp)
+GO(amdgpu_vm_reserve_vmid, iFpu)
+GO(amdgpu_vm_unreserve_vmid, iFpu)