From 34fcbbd7b7d1da1c8b2705655ac5897afd04c6e8 Mon Sep 17 00:00:00 2001 From: ptitSeb Date: Mon, 9 Sep 2024 16:02:37 +0200 Subject: [TRACE] Better trace for F3 0F 1E FA opcode --- src/emu/x64run_private.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/emu/x64run_private.c b/src/emu/x64run_private.c index 0616b4cf..818e3d18 100644 --- a/src/emu/x64run_private.c +++ b/src/emu/x64run_private.c @@ -1261,7 +1261,9 @@ void PrintTrace(x64emu_t* emu, uintptr_t ip, int dynarec) if(!printFunctionAddr(*(uint32_t*)(R_RSP), " STACK_TOP: ")) printf_log(LOG_NONE, " STACK_TOP: %p ", (void*)(uintptr_t)*(uint32_t*)(R_RSP)); } else if(peek==0xF3 && PK(1)==0x0F && PK(2)==0x1E && PK(3)==0xFA && !is32bits) { - printFunctionAddr(*(uintptr_t*)(R_RSP), " STACK_TOP: "); + uintptr_t nextaddr = *(uintptr_t*)(R_RSP); + if(!printFunctionAddr(nextaddr, "=> ")) + printf_log(LOG_NONE, " => %p", (void*)nextaddr); } else if(peek==0xE8 || peek==0xE9) { // Call & Jmp uintptr_t nextaddr = ip + 5 + PK32(1); printFunctionAddr(nextaddr, "=> "); -- cgit 1.4.1