diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2024-11-06 16:07:21 +0100 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2024-11-06 16:07:21 +0100 |
| commit | 27013d6a03be585ca3c7c884ea37be3fb2486957 (patch) | |
| tree | c4736b767da154eb23e30830cdab9585b1700231 /src | |
| parent | 3ba91a651384b0ea4207e91e206440cae2684db2 (diff) | |
| download | box64-27013d6a03be585ca3c7c884ea37be3fb2486957.tar.gz box64-27013d6a03be585ca3c7c884ea37be3fb2486957.zip | |
[TRACE] A few more details for some speicifc CALL variant
Diffstat (limited to 'src')
| -rw-r--r-- | src/emu/x64run_private.c | 12 |
1 files changed, 6 insertions, 6 deletions
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) { |