mirror of
https://github.com/ptitSeb/box86.git
synced 2024-11-23 09:54:03 +08:00
Automatically add emulated function calls definitions
This commit is contained in:
parent
765760f2f4
commit
5e59e26de3
@ -26,48 +26,67 @@ endif()
|
||||
|
||||
#include_directories(include)
|
||||
|
||||
SET(ELFLOADER_SRC
|
||||
src/bridge.c
|
||||
src/main.c
|
||||
src/pathcoll.c
|
||||
src/box86context.c
|
||||
src/fileutils.c
|
||||
src/elfloader.c
|
||||
src/elfparser.c
|
||||
src/elfload_dump.c
|
||||
src/library.c
|
||||
src/librarian.c
|
||||
src/stack.c
|
||||
src/threads.c
|
||||
src/wrapper.c
|
||||
src/x86emu.c
|
||||
src/x86run.c
|
||||
src/x86run0f.c
|
||||
src/x86run66.c
|
||||
src/x86run660f.c
|
||||
src/x86run_private.c
|
||||
src/x86syscall.c
|
||||
src/x86primop.c
|
||||
src/x86trace.c
|
||||
src/x86int3.c
|
||||
src/x87emu_private.c
|
||||
src/x87run.c
|
||||
set(ELFLOADER_SRC
|
||||
"${CMAKE_HOME_DIRECTORY}/src/bridge.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/main.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/pathcoll.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/box86context.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/fileutils.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/elfloader.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/elfparser.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/elfload_dump.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/library.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/librarian.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/stack.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/threads.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrapper.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/x86emu.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/x86run.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/x86run0f.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/x86run66.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/x86run660f.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/x86run_private.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/x86syscall.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/x86primop.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/x86trace.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/x86int3.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/x87emu_private.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/x87run.c"
|
||||
|
||||
src/wrappedlibc.c
|
||||
src/wrappedlibpthread.c
|
||||
src/wrappedlibrt.c
|
||||
src/wrappedlibgl.c
|
||||
src/wrappedlibx11.c
|
||||
src/wrappedlibasound.c
|
||||
src/wrappedlibdl.c
|
||||
src/wrappedlibm.c
|
||||
src/wrappedsdl1.c
|
||||
src/wrappedsdl2.c
|
||||
src/wrappedsdl2mixer.c
|
||||
src/wrappedsdl2image.c
|
||||
src/wrappedldlinux.c
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrappedlibc.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrappedlibpthread.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrappedlibrt.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrappedlibgl.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrappedlibx11.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrappedlibasound.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrappedlibdl.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrappedlibm.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrappedsdl1.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrappedsdl2.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrappedsdl2mixer.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrappedsdl2image.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrappedldlinux.c"
|
||||
)
|
||||
|
||||
set(WRAPPEDS
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrappedlibc.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrappedlibpthread.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrappedlibrt.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrappedlibgl.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrappedlibx11.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrappedlibasound.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrappedlibdl.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrappedlibm.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrappedsdl1.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrappedsdl2.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrappedsdl2mixer.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrappedsdl2image.c"
|
||||
"${CMAKE_HOME_DIRECTORY}/src/wrappedldlinux.c"
|
||||
)
|
||||
set(WRAPPER "${CMAKE_HOME_DIRECTORY}/src/wrapper.c" "${CMAKE_HOME_DIRECTORY}/src/wrapper.h")
|
||||
add_custom_command(OUTPUT ${WRAPPER} COMMAND "${CMAKE_HOME_DIRECTORY}/rebuild_wrappers.py" "${CMAKE_HOME_DIRECTORY}" MAIN_DEPENDENCY "${CMAKE_HOME_DIRECTORY}/rebuild_wrappers.py" DEPENDS ${WRAPPEDS})
|
||||
set_source_files_properties(${WRAPPER} PROPERTIES GENERATED TRUE)
|
||||
|
||||
add_executable(box86 ${ELFLOADER_SRC})
|
||||
target_link_libraries(box86 m dl rt pthread)
|
||||
|
||||
@ -106,4 +125,4 @@ add_test(test06 ${CMAKE_COMMAND} -D TEST_PROGRAM=${CMAKE_BINARY_DIR}/box86
|
||||
add_test(test07 ${CMAKE_COMMAND} -D TEST_PROGRAM=${CMAKE_BINARY_DIR}/box86
|
||||
-D TEST_ARGS=${CMAKE_SOURCE_DIR}/tests/test07 -D TEST_OUTPUT=tmpfile.txt
|
||||
-D TEST_REFERENCE=${CMAKE_SOURCE_DIR}/tests/ref07.txt
|
||||
-P ${CMAKE_SOURCE_DIR}/runTest.cmake )
|
||||
-P ${CMAKE_SOURCE_DIR}/runTest.cmake )
|
||||
|
221
rebuild_wrappers.py
Executable file
221
rebuild_wrappers.py
Executable file
@ -0,0 +1,221 @@
|
||||
#!/usr/bin/env python
|
||||
|
||||
import os
|
||||
import glob
|
||||
import sys
|
||||
|
||||
values = ['E', 'v', 'c', 'w', 'i', 'I', 'C', 'W', 'u', 'U', 'f', 'd', 'D', 'p', 'V']
|
||||
def splitchar(s):
|
||||
ret = [len(s)]
|
||||
i = 0
|
||||
for c in s:
|
||||
i = i + 1
|
||||
if i == 2:
|
||||
continue
|
||||
ret.append(values.index(c))
|
||||
return ret
|
||||
|
||||
def main(root):
|
||||
# Initialize variables: gbl for all values, vals for file-per-file values, redirects for redirections
|
||||
gbl = []
|
||||
vals = {}
|
||||
redirects = {}
|
||||
|
||||
# First read the files inside the headers
|
||||
for filepath in glob.glob(os.path.join(root, "src", "wrapped*_private.h")):
|
||||
filename = filepath.split("/")[-1]
|
||||
locval = []
|
||||
with open(filepath, 'r') as file:
|
||||
for line in file:
|
||||
ln = line.strip()
|
||||
# If the line is a `GO...' line (GO/GOM/GO2/...)...
|
||||
if ln.startswith("GO"):
|
||||
# ... then look at the second parameter of the line
|
||||
ln = ln.split(",")[1].split(")")[0].strip()
|
||||
if any(c not in values for c in ln[2:]) or (('v' in ln[2:]) and (len(ln) > 3)):
|
||||
old = ln
|
||||
# This needs more work
|
||||
acceptables = ['v', 'o', '0', '1'] + values
|
||||
if any(c not in acceptables for c in ln[2:]):
|
||||
raise NotImplementedError("{0}".format(ln[2:]))
|
||||
# Ok, this is acceptable: there is 0, 1, stdout and void
|
||||
ln = (ln
|
||||
.replace("v", "") # void -> nothing
|
||||
.replace("o", "p") # stdout -> pointer
|
||||
.replace("0", "p") # 0 -> pointer
|
||||
.replace("1", "i")) # 1 -> integer
|
||||
redirects[old] = ln
|
||||
# Simply append the function name if it's not yet existing
|
||||
if ln not in locval:
|
||||
locval.append(ln)
|
||||
if ln not in gbl:
|
||||
gbl.append(ln)
|
||||
|
||||
# Sort the file local values and add it to the dictionary
|
||||
locval.sort(key=lambda v: splitchar(v))
|
||||
vals[filename] = locval
|
||||
|
||||
# Sort the table
|
||||
gbl.sort(key=lambda v: splitchar(v))
|
||||
|
||||
def length(s):
|
||||
l = len(s)
|
||||
if l < 10:
|
||||
ret = "0" + str(l)
|
||||
else:
|
||||
ret = str(l)
|
||||
return ret
|
||||
|
||||
# Now the files rebuilding part
|
||||
# File headers and guards
|
||||
files_headers = {
|
||||
"wrapper.c": """/*****************************************************************
|
||||
* File automatically generated by rebuild_wrappers.py (v0.0.1.01)
|
||||
*****************************************************************/
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdint.h>
|
||||
|
||||
#include "wrapper.h"
|
||||
#include "x86emu_private.h"
|
||||
#include "x87emu_private.h"
|
||||
#include "regs.h"
|
||||
|
||||
typedef union ui64_s {
|
||||
int64_t i;
|
||||
uint64_t u;
|
||||
uint32_t d[2];
|
||||
} ui64_t;
|
||||
|
||||
""",
|
||||
"wrapper.h": """/*****************************************************************
|
||||
* File automatically generated by rebuild_wrappers.py (v0.0.1.01)
|
||||
*****************************************************************/
|
||||
#ifndef __WRAPPER_H_
|
||||
#define __WRAPPER_H_
|
||||
#include <stdint.h>
|
||||
|
||||
typedef struct x86emu_s x86emu_t;
|
||||
|
||||
// the generic wrapper pointer functions
|
||||
typedef void (*wrapper_t)(x86emu_t* emu, uintptr_t fnc);
|
||||
|
||||
// list of defined wrapper
|
||||
// v = void, i = int32, u = uint32, U/I= (u)int64
|
||||
// p = pointer, P = callback
|
||||
// f = float, d = double, D = long double, L = fake long double
|
||||
// V = vaargs, E = current x86emu struct
|
||||
// 0 = constant 0, 1 = constant 1
|
||||
// o = stdout
|
||||
// C = unsigned byte c = char
|
||||
// W = unsigned short w = short
|
||||
// Q = ...
|
||||
// S8 = struct, 8 bytes
|
||||
|
||||
"""
|
||||
}
|
||||
files_guards = {"wrapper.c": """""",
|
||||
"wrapper.h": """
|
||||
#endif //__WRAPPER_H_
|
||||
"""
|
||||
}
|
||||
|
||||
# Transform strings into arrays
|
||||
gbl = [[c for c in v] for v in gbl]
|
||||
|
||||
# Rewrite the wrapper.h file:
|
||||
with open(os.path.join(root, "src", "wrapper.h"), 'w') as file:
|
||||
file.write(files_headers["wrapper.h"])
|
||||
for v in gbl:
|
||||
file.write("void " + ''.join(v) + "(x86emu_t *emu, uintptr_t fnc);\n")
|
||||
for v in redirects:
|
||||
file.write("void " + ''.join(v) + "(x86emu_t *emu, uintptr_t fnc);\n")
|
||||
file.write(files_guards["wrapper.h"])
|
||||
|
||||
# Rewrite the wrapper.c file:
|
||||
with open(os.path.join(root, "src", "wrapper.c"), 'w') as file:
|
||||
file.write(files_headers["wrapper.c"])
|
||||
|
||||
# First part: typedefs
|
||||
for v in gbl:
|
||||
types = ["x86emu_t*", "void", "char", "short", "int32_t", "int64_t", "unsigned char", "unsigned short", "uint32_t", "uint64_t", "float", "double", "long double", "void*", "void*"]
|
||||
|
||||
file.write("typedef " + types[values.index(v[0])] + " (*" + ''.join(v) + "_t)"
|
||||
+ "(" + ', '.join(types[values.index(t)] for t in v[2:]) + ");\n")
|
||||
|
||||
# Next part: function definitions
|
||||
|
||||
# Helper functions to write the function definitions
|
||||
def function_args(args, d=4):
|
||||
if len(args) == 0:
|
||||
return ""
|
||||
if d % 4 != 0:
|
||||
raise ValueError("{d} is not a multiple of 4. Did you try passing a V and something else?")
|
||||
|
||||
if args[0] == "0":
|
||||
return "(void*)(R_ESP + {p}), ".format(p=d) + function_args(args[1:], d + 4)
|
||||
elif args[0] == 1:
|
||||
return "1, " + function_args(args[1:], d)
|
||||
|
||||
arg = [
|
||||
"emu, ", # E
|
||||
"", # v
|
||||
"*(int8_t*)(R_ESP + {p}), ", # c
|
||||
"*(int16_t*)(R_ESP + {p}), ", # w
|
||||
"*(int32_t*)(R_ESP + {p}), ", # i
|
||||
"*(int64_t*)(R_ESP + {p}), ", # I
|
||||
"*(uint8_t*)(R_ESP + {p}), ", # C
|
||||
"*(uint16_t*)(R_ESP + {p}), ", # W
|
||||
"*(uint32_t*)(R_ESP + {p}), ", # u
|
||||
"*(uint64_t*)(R_ESP + {p}), ", # U
|
||||
"*(float*)(R_ESP + {p}), ", # f
|
||||
"*(double*)(R_ESP + {p}), ", # d
|
||||
"*(long double*)(R_ESP + {p}), ", # D
|
||||
"*(void**)(R_ESP + {p}), ", # p
|
||||
"(void*)(R_ESP + {p} - 4), " # V
|
||||
]
|
||||
deltas = [0, 4, 4, 4, 4, 8, 4, 4, 4, 8, 4, 8, 12, 4, 1]
|
||||
if len(values) != len(arg):
|
||||
raise NotImplementedError("len(values) != len(arg)")
|
||||
raise NotImplementedError("len(values) = {lenval} != len(arg) = {lenarg}".format(lenval=len(values), lenarg=len(arg)))
|
||||
if len(values) != len(deltas):
|
||||
raise NotImplementedError("len(values) != len(deltas)")
|
||||
raise NotImplementedError("len(values) = {lenval} != len(deltas) = {lendeltas}".format(lenval=len(values), lendeltas=len(deltas)))
|
||||
return arg[values.index(args[0])].format(p=d) + function_args(args[1:], d + deltas[values.index(args[0])])
|
||||
|
||||
def function_writer(f, N, W, rettype, args):
|
||||
f.write("void {0}(x86emu_t *emu, uintptr_t fcn) {2} {1} fn = ({1})fcn; ".format(N, W, "{"))
|
||||
vals = [
|
||||
"\n#error Invalid return type: emulator\n", # E
|
||||
"fn({0});", # v
|
||||
"R_EAX=fn({0});", # c
|
||||
"R_EAX=fn({0});", # w
|
||||
"R_EAX=fn({0});", # i
|
||||
"ui64_t r; r.i=fn({0}); R_EAX=r.d[0]; R_EDX=r.d[1];", # I
|
||||
"R_EAX=(unsigned char)fn({0});", # C
|
||||
"R_EAX=(unsigned short)fn({0});", # W
|
||||
"R_EAX=(uint32_t)fn({0});", # u
|
||||
"ui64_t r; r.u=(uint64_t)fn({0}); R_EAX=r.d[0]; R_EDX=r.d[1];", # U
|
||||
"float fl=fn({0}); fpu_do_push(emu); ST0.d = fl;", # f
|
||||
"double db=fn({0}); fpu_do_push(emu); ST0.d = db;", # d
|
||||
"long double ld=fn({0}); fpu_do_push(emu); ST0.d = ld;", # D
|
||||
"R_EAX=(uintptr_t)fn({0});", # p
|
||||
"\n#error Invalid return type: va_list\n", # V
|
||||
]
|
||||
if len(values) != len(vals):
|
||||
raise NotImplementedError("len(values) = {lenval} != len(vals) = {lenvals}".format(lenval=len(values), lenvals=len(vals)))
|
||||
f.write(vals[values.index(rettype)].format(function_args(args)[:-2]) + " }\n")
|
||||
|
||||
for v in gbl:
|
||||
function_writer(file, ''.join(v), ''.join(v) + "_t", v[0], v[2:])
|
||||
for v in redirects:
|
||||
function_writer(file, v, redirects[v] + "_t", v[0], v[2:])
|
||||
|
||||
file.write(files_guards["wrapper.c"])
|
||||
|
||||
return 0
|
||||
|
||||
if __name__ == '__main__':
|
||||
if main(sys.argv[1]) != 0:
|
||||
exit(2)
|
||||
exit(0)
|
1221
src/wrapper.c
Executable file → Normal file
1221
src/wrapper.c
Executable file → Normal file
File diff suppressed because it is too large
Load Diff
564
src/wrapper.h
Executable file → Normal file
564
src/wrapper.h
Executable file → Normal file
@ -1,3 +1,6 @@
|
||||
/*****************************************************************
|
||||
* File automatically generated by rebuild_wrappers.py (v0.0.1.01)
|
||||
*****************************************************************/
|
||||
#ifndef __WRAPPER_H_
|
||||
#define __WRAPPER_H_
|
||||
#include <stdint.h>
|
||||
@ -19,110 +22,461 @@ typedef void (*wrapper_t)(x86emu_t* emu, uintptr_t fnc);
|
||||
// Q = ...
|
||||
// S8 = struct, 8 bytes
|
||||
|
||||
#define __PASTER(x, y) x##y
|
||||
#define _EVALUATOR(x, y) __PASTER(x, y)
|
||||
#define PREFIX(y) _EVALUATOR(ret, _EVALUATOR(F, y))
|
||||
|
||||
#define GO(N, ...) GOW(N, __PASTER(N, _t), __VA_ARGS__)
|
||||
#define GOW(N, W, ...) void N(x86emu_t *emu, uintptr_t fnc);
|
||||
|
||||
#define GO01(b, ...) GO(PREFIX(b), __VA_ARGS__)
|
||||
#define GO02(b, c, ...) GO01(b##c, __VA_ARGS__)
|
||||
#define GO03(b, c, ...) GO02(b##c, __VA_ARGS__)
|
||||
#define GO04(b, c, ...) GO03(b##c, __VA_ARGS__)
|
||||
#define GO05(b, c, ...) GO04(b##c, __VA_ARGS__)
|
||||
#define GO06(b, c, ...) GO05(b##c, __VA_ARGS__)
|
||||
#define GO07(b, c, ...) GO06(b##c, __VA_ARGS__)
|
||||
#define GO08(b, c, ...) GO07(b##c, __VA_ARGS__)
|
||||
#define GO09(b, c, ...) GO08(b##c, __VA_ARGS__)
|
||||
#define GO10(b, c, ...) GO09(b##c, __VA_ARGS__)
|
||||
#define GO11(b, c, ...) GO10(b##c, __VA_ARGS__)
|
||||
#define GO12(b, c, ...) GO11(b##c, __VA_ARGS__)
|
||||
#define GO13(b, c, ...) GO12(b##c, __VA_ARGS__)
|
||||
#define GO14(b, c, ...) GO13(b##c, __VA_ARGS__)
|
||||
#define GO15(b, c, ...) GO14(b##c, __VA_ARGS__)
|
||||
|
||||
// void...
|
||||
#define ret v
|
||||
#include "wrappers.h"
|
||||
#include "wrapper_v.h"
|
||||
#undef ret
|
||||
|
||||
// uint8....
|
||||
#define ret C
|
||||
#include "wrappers.h"
|
||||
#include "wrapper_u8.h"
|
||||
#undef ret
|
||||
|
||||
// int32...
|
||||
#define ret i
|
||||
#include "wrappers.h"
|
||||
#include "wrapper_i.h"
|
||||
#undef ret
|
||||
|
||||
// uint32
|
||||
#define ret u
|
||||
#include "wrappers.h"
|
||||
#include "wrapper_u.h"
|
||||
#undef ret
|
||||
|
||||
// void*
|
||||
#define ret p
|
||||
#include "wrappers.h"
|
||||
#include "wrapper_p.h"
|
||||
#undef ret
|
||||
|
||||
// float
|
||||
#define ret f
|
||||
#include "wrappers.h"
|
||||
#include "wrapper_f.h"
|
||||
#undef ret
|
||||
|
||||
// double
|
||||
#define ret d
|
||||
#include "wrappers.h"
|
||||
#include "wrapper_d.h"
|
||||
#undef ret
|
||||
|
||||
// long double
|
||||
#define ret D
|
||||
#include "wrappers.h"
|
||||
#include "wrapper_ld.h"
|
||||
#undef ret
|
||||
|
||||
// int64...
|
||||
#define ret I
|
||||
#include "wrappers.h"
|
||||
#include "wrapper_i64.h"
|
||||
#undef ret
|
||||
|
||||
// uint64
|
||||
#define ret U
|
||||
#include "wrappers.h"
|
||||
#include "wrapper_u64.h"
|
||||
#undef ret
|
||||
|
||||
#undef GO15
|
||||
#undef GO14
|
||||
#undef GO13
|
||||
#undef GO12
|
||||
#undef GO11
|
||||
#undef GO10
|
||||
#undef GO09
|
||||
#undef GO08
|
||||
#undef GO07
|
||||
#undef GO06
|
||||
#undef GO05
|
||||
#undef GO04
|
||||
#undef GO03
|
||||
#undef GO02
|
||||
#undef GO01
|
||||
|
||||
#undef GOW
|
||||
#undef GO
|
||||
|
||||
#undef PREFIX
|
||||
#undef _EVALUATOR
|
||||
#undef __PASTER
|
||||
void vFE(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFv(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFi(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFf(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFd(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFp(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFv(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFi(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFu(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFp(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFE(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFv(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFi(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFu(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFp(x86emu_t *emu, uintptr_t fnc);
|
||||
void UFp(x86emu_t *emu, uintptr_t fnc);
|
||||
void fFf(x86emu_t *emu, uintptr_t fnc);
|
||||
void dFd(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFE(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFv(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFi(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFu(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFp(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFEi(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFif(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFid(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFWW(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFui(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuf(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFud(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFfi(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFdd(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFpp(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFEp(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFii(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFip(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFui(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFup(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFpi(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFpW(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFpu(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFpU(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFpp(x86emu_t *emu, uintptr_t fnc);
|
||||
void CFui(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFui(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFup(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFpi(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFpu(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFpp(x86emu_t *emu, uintptr_t fnc);
|
||||
void fFff(x86emu_t *emu, uintptr_t fnc);
|
||||
void fFfp(x86emu_t *emu, uintptr_t fnc);
|
||||
void fFpp(x86emu_t *emu, uintptr_t fnc);
|
||||
void dFdd(x86emu_t *emu, uintptr_t fnc);
|
||||
void dFdp(x86emu_t *emu, uintptr_t fnc);
|
||||
void dFpp(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFEp(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFip(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFui(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFpi(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFpu(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFpp(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFEpi(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiui(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFidd(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFipi(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFipu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFipp(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuif(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuid(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuui(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuf(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuud(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFudd(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFfff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFfpp(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFddd(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFdpp(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFpii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFpiu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFpip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFppu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFEpp(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFipu(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFipp(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFuff(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFfff(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFpii(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFpip(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFpuc(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFpuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFpup(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFppi(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFppu(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFppV(x86emu_t *emu, uintptr_t fnc);
|
||||
void IFppi(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFipu(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFuip(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFuuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFupp(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFpiu(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFppi(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFppu(x86emu_t *emu, uintptr_t fnc);
|
||||
void UFppi(x86emu_t *emu, uintptr_t fnc);
|
||||
void fFuii(x86emu_t *emu, uintptr_t fnc);
|
||||
void fFppu(x86emu_t *emu, uintptr_t fnc);
|
||||
void dFppu(x86emu_t *emu, uintptr_t fnc);
|
||||
void DFppu(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFEip(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFEpi(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFEpp(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFipi(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFipp(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFIpi(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFuii(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFupi(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFUpi(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFpiu(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFpip(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFppi(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFppu(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiuip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiuuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFifff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiddd(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFipup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiui(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuifi(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuidd(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuipi(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuipu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuipp(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuui(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuf(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuud(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuupi(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuupp(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFufff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuddd(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFupii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuppi(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFffff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFdddd(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFpipp(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFpppu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFpppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFEipp(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFEppV(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFiiiu(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFiWii(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFipii(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFipuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFuipp(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFuuff(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFpiiu(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFpipp(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFpupV(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFppii(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFppip(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFppup(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFpppi(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFpppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFuuuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFpccc(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFpuip(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFpuuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFpuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFpupp(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFppup(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFpppi(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFEppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFiiiu(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFiiup(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFuiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFppuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFpppu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiiiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiiiiu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiiuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiuiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiuipi(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiuuuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiffff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFidddd(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFipipu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFipipp(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFipupi(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiiiu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiiup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiuii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiuiu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiuip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiuuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiupi(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuifff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiddd(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuipip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuipup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuippp(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiui(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuipi(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuipu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuipp(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuiu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuui(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuupii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuffff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFudddd(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFupupi(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuppip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFupppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFfffff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFpiiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFpuipp(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFpppii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFppppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFEpipp(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFEpppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFEpppV(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFipiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFipppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFpiiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFpiiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFpipii(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFpppii(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFppppu(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFppppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFuiiiu(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFpcccc(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFpuppu(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFppiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFppuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFppppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFuiipp(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFpippp(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFppuuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiiiiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiffiff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiddidd(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiiiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiiuii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiiuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiuiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiuiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiuiuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiuuip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiuuuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiupii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiupiu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiffff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuidddd(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuipiup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiuii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiuiu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuiup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuipi(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuipp(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuuii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuuip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuuuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuuff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuppi(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuffff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuudddd(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuffiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFufffff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuddiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFupupip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuppppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFffffff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFdddddd(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFppupii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFpppppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFippppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFpiiipp(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFpiuuuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFppuiiu(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFpiiiiu(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFppiiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFpppppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiiiiiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiiiiuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiiupuip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiiffffp(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiupuuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiiiiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiiiuip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiiiuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiuiiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiuiiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiuiiuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiupiiu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuipiiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuipffff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuipdddd(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiiiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiiiui(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiiiuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiiuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiuiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuipppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuiiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuiiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuiuii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuiupi(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuuiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuuuuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuufff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuffff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuudddd(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuffiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuddiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuffffff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFudddddd(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFppiiuui(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFppipppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFppppppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFuippppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiiiiuuip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiupuiuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiupuuuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiiiiiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiiiiuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiiipiup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiuiiiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiuiiiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiiiiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiiiuip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiiiuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiiuupp(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiuiiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiuiiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuiiiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuiuiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuipipp(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuuuuuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuuufff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFffffffff(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFEpippppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFuiifpppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFpupppppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFpppipppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void uFuipppppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFuiiiuuuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFppiiuuui(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiiiiiiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiiiiiuip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiiiiiuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiuiiiiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiupuffup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiiiiiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiuiiiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiuiiiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiuiiuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuiiiiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuuuuuuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuupiuiuuf(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuffffffff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFffuuuufff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFpppppippp(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFppiuiippu(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFpiiiiuuuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFiiiiiiiiiu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiiiiiiiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiiiiiiuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiuiiiiuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiiiiiiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiiiiiuip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiiiiiuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiuiiiiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiuiiiuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuuuuuiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuuuuuuuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuupiiupuuf(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuffiiffiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuddiiddiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFffffffffff(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFppppiiiiuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiiiiiiiuip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiiiiiiiuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiuiiiiiuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiuiiiiuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuuuuuuuuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuffiiffiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuufffffffff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuddiiddiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuffffffffff(x86emu_t *emu, uintptr_t fnc);
|
||||
void pFppiiuuuipii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiiiiiiiuip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiiiiiiiuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuuuuuuuuuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFffffffffffff(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFpppiiipppppp(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuiiiiiiiiiuup(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuuuuuuuuuuuu(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuffffffffffff(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuffiiffiiffiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuddiiddiiddiip(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFuuiiiiuuiiiiiii(x86emu_t *emu, uintptr_t fnc);
|
||||
void vFfffffffffffffff(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFEpp0V(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFEvp0V(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFEpvp0V(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFpvpV(x86emu_t *emu, uintptr_t fnc);
|
||||
void iFEp0V(x86emu_t *emu, uintptr_t fnc);
|
||||
|
||||
#endif //__WRAPPER_H_
|
||||
|
@ -1,5 +0,0 @@
|
||||
#ifdef GOW
|
||||
|
||||
#else
|
||||
#error You must not include wrapper_d.h but wrapper.h
|
||||
#endif
|
@ -1,5 +0,0 @@
|
||||
#ifdef GOW
|
||||
|
||||
#else
|
||||
#error You must not include wrapper_f.h but wrapper.h
|
||||
#endif
|
@ -1,16 +0,0 @@
|
||||
#ifdef GOW
|
||||
|
||||
GOW(iFpV, iFpp_t, p(0), (void*)stack(4))
|
||||
GOW(iF1pV, iFipp_t, 1, p(0), (void*)stack(4))
|
||||
GOW(iFopV, iFppp_t, (void*)stdout, p(0), (void*)stack(4))
|
||||
GOW(iFvopV, iFppp_t, (void*)stdout, p(4), (void*)stack(8))
|
||||
GOW(iFpvpV, iFppp_t, p(0), p(8), (void*)stack(12))
|
||||
GOW(iFvpV, iFpp_t, p(4), (void*)stack(8))
|
||||
GOW(iFEp0V, iFEppp_t, emu, p(0), (void*)stack(4), (void*)stack(4))
|
||||
GOW(iFEvp0V, iFEppp_t, emu, p(4), (void*)stack(8), (void*)stack(8))
|
||||
GOW(iFEpp0V, iFEpppp_t, emu, p(0), p(4), (void*)stack(8), (void*)stack(8))
|
||||
GOW(iFEpvp0V, iFEpppp_t, emu, p(0), p(8), (void*)stack(12), (void*)stack(12))
|
||||
|
||||
#else
|
||||
#error You must not include wrapper_i.h but wrapper.h
|
||||
#endif
|
@ -1,5 +0,0 @@
|
||||
#ifdef GOW
|
||||
|
||||
#else
|
||||
#error You must not include wrapper_i64.h but wrapper.h
|
||||
#endif
|
@ -1,5 +0,0 @@
|
||||
#ifdef GOW
|
||||
|
||||
#else
|
||||
#error You must not include wrapper_ld.h but wrapper.h
|
||||
#endif
|
@ -1,5 +0,0 @@
|
||||
#ifdef GOW
|
||||
|
||||
#else
|
||||
#error You must not include wrapper_p.h but wrapper.h
|
||||
#endif
|
@ -1,5 +0,0 @@
|
||||
#ifdef GOW
|
||||
|
||||
#else
|
||||
#error You must not include wrapper_u.h but wrapper.heh
|
||||
#endif
|
@ -1,5 +0,0 @@
|
||||
#ifdef GOW
|
||||
|
||||
#else
|
||||
#error You must not include wrapper_u64.h but wrapper.h
|
||||
#endif
|
@ -1,5 +0,0 @@
|
||||
#ifdef GOW
|
||||
|
||||
#else
|
||||
#error You must not include wrapper_u8.h but wrapper.h
|
||||
#endif
|
@ -1,5 +0,0 @@
|
||||
#ifdef GOW
|
||||
|
||||
#else
|
||||
#error You must not include wrapper_v.h but wrapper.h
|
||||
#endif
|
Loading…
Reference in New Issue
Block a user