From 27013d6a03be585ca3c7c884ea37be3fb2486957 Mon Sep 17 00:00:00 2001 From: ptitSeb Date: Wed, 6 Nov 2024 16:07:21 +0100 Subject: [TRACE] A few more details for some speicifc CALL variant --- src/emu/x64run_private.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'src') diff --git a/src/emu/x64run_private.c b/src/emu/x64run_private.c index d0139c0c..dca534a8 100644 --- a/src/emu/x64run_private.c +++ b/src/emu/x64run_private.c @@ -1315,16 +1315,16 @@ void PrintTrace(x64emu_t* emu, uintptr_t ip, int dynarec) uintptr_t nextaddr = *(ptr_t*)from_ptrv(R_EBX + PK32(2)); printf_log(LOG_NONE, " => %p", (void*)nextaddr); printFunctionAddr(nextaddr, "=> "); - } else if(is32bits && PK(1)==0x92) { - uintptr_t nextaddr = *(ptr_t*)from_ptrv(R_EDX + PK32(2)); + } else if(PK(1)==0x92) { + uintptr_t nextaddr = is32bits?(*(ptr_t*)from_ptrv(R_EDX + PK32(2))):(*(uintptr_t*)(R_RDX + PK32(2))); printf_log(LOG_NONE, " => %p", (void*)nextaddr); printFunctionAddr(nextaddr, "=> "); - } else if(is32bits && PK(1)==0x50) { - uintptr_t nextaddr = *(ptr_t*)from_ptrv(R_EAX + PK(2)); + } else if(PK(1)==0x50) { + uintptr_t nextaddr = is32bits?(*(ptr_t*)from_ptrv(R_EAX + PK(2))):(*(uintptr_t*)(R_RAX + PK(2))); printf_log(LOG_NONE, " => %p", (void*)nextaddr); printFunctionAddr(nextaddr, "=> "); - } else if(is32bits && PK(1)==0x52) { - uintptr_t nextaddr = *(ptr_t*)from_ptrv(R_EDX + PK(2)); + } else if(PK(1)==0x52) { + uintptr_t nextaddr = is32bits?(*(ptr_t*)from_ptrv(R_EDX + PK(2))):(*(uintptr_t*)(R_RDX + PK(2))); printf_log(LOG_NONE, " => %p", (void*)nextaddr); printFunctionAddr(nextaddr, "=> "); } else if(is32bits && PK(1)==0x10) { -- cgit 1.4.1