about summary refs log tree commit diff stats
path: root/miasm2/jitter/Jitllvm.c
diff options
context:
space:
mode:
Diffstat (limited to 'miasm2/jitter/Jitllvm.c')
-rw-r--r--miasm2/jitter/Jitllvm.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/miasm2/jitter/Jitllvm.c b/miasm2/jitter/Jitllvm.c
index ab077b05..6622e615 100644
--- a/miasm2/jitter/Jitllvm.c
+++ b/miasm2/jitter/Jitllvm.c
@@ -6,15 +6,17 @@
 
 PyObject* llvm_exec_bloc(PyObject* self, PyObject* args)
 {
+	uint64_t func_addr;
 	uint64_t (*func)(void*, void*);
 	uint64_t vm;
 	uint64_t cpu;
 	uint64_t ret;
 
-	if (!PyArg_ParseTuple(args, "KKK", &func, &cpu, &vm))
+	if (!PyArg_ParseTuple(args, "KKK", &func_addr, &cpu, &vm))
 		return NULL;
-	ret = func((void*)cpu, (void*)vm);
-	return PyLong_FromUnsignedLongLong( (uint64_t)ret);
+	func = (void *) (intptr_t) func_addr;
+	ret = func((void*)(intptr_t) cpu, (void*)(intptr_t) vm);
+	return PyLong_FromUnsignedLongLong(ret);
 }