On unknown_instruction dump the full guest GPR state.

This commit is contained in:
Ryan Houdek 2015-08-07 02:45:05 -05:00
parent eefe710571
commit 0326bf7164
1 changed files with 8 additions and 1 deletions

View File

@ -287,7 +287,14 @@ void Interpreter::unknown_instruction(UGeckoInstruction _inst)
std::string disasm = GekkoDisassembler::Disassemble(PowerPC::HostRead_U32(last_pc), last_pc); std::string disasm = GekkoDisassembler::Disassemble(PowerPC::HostRead_U32(last_pc), last_pc);
NOTICE_LOG(POWERPC, "Last PC = %08x : %s", last_pc, disasm.c_str()); NOTICE_LOG(POWERPC, "Last PC = %08x : %s", last_pc, disasm.c_str());
Dolphin_Debugger::PrintCallstack(); Dolphin_Debugger::PrintCallstack();
_assert_msg_(POWERPC, 0, "\nIntCPU: Unknown instruction %08x at PC = %08x last_PC = %08x LR = %08x\n", _inst.hex, PC, last_pc, LR); NOTICE_LOG(POWERPC, "\nIntCPU: Unknown instruction %08x at PC = %08x last_PC = %08x LR = %08x\n", _inst.hex, PC, last_pc, LR);
for (int i = 0; i < 32; i += 4)
NOTICE_LOG(POWERPC, "r%d: 0x%08x r%d: 0x%08x r%d:0x%08x r%d: 0x%08x",
i, rGPR[i],
i + 1, rGPR[i + 1],
i + 2, rGPR[i + 2],
i + 3, rGPR[i + 3]);
assert(0);
} }
void Interpreter::ClearCache() void Interpreter::ClearCache()