diff options
| author | hrydgard <hrydgard@gmail.com> | 2008-12-19 22:21:29 +0000 |
|---|---|---|
| committer | hrydgard <hrydgard@gmail.com> | 2008-12-19 22:21:29 +0000 |
| commit | 347fc18542971bdb973870befd198cbab703d42c (patch) | |
| tree | f5a3a8601800648d342a355af4d4b8460cfe3576 /Source/Core/DebuggerWX/Src/JitWindow.cpp | |
| parent | cd62fc5c0c2d13b164e17bef594f191aaa602743 (diff) | |
misc cleanup, bugfix for x86 display in jit window
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1596 8ced0084-cf51-0410-be5f-012b33b47a6e
Diffstat (limited to 'Source/Core/DebuggerWX/Src/JitWindow.cpp')
| -rw-r--r-- | Source/Core/DebuggerWX/Src/JitWindow.cpp | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/Source/Core/DebuggerWX/Src/JitWindow.cpp b/Source/Core/DebuggerWX/Src/JitWindow.cpp index 4b8de3a64c..81c57e7328 100644 --- a/Source/Core/DebuggerWX/Src/JitWindow.cpp +++ b/Source/Core/DebuggerWX/Src/JitWindow.cpp @@ -141,12 +141,26 @@ void CJitWindow::Compare(u32 em_address) int block_num = jit.GetBlockNumberFromAddress(em_address); if (block_num < 0) { - ppc_box->SetValue(wxString::FromAscii(StringFromFormat("(non-code address: %08x)", em_address).c_str())); - x86_box->SetValue(wxString::FromAscii(StringFromFormat("(no translation)").c_str())); - return; + for (int i = 0; i < 500; i++) { + block_num = jit.GetBlockNumberFromAddress(em_address - 4 * i); + if (block_num >= 0) + break; + } + if (block_num >= 0) { + Jit64::JitBlock *block = jit.GetBlock(block_num); + if (!(block->originalAddress <= em_address && block->originalSize + block->originalAddress >= em_address)) + block_num = -1; + } + // Do not merge this "if" with the above - block_num changes inside it. + if (block_num < 0) { + ppc_box->SetValue(wxString::FromAscii(StringFromFormat("(non-code address: %08x)", em_address).c_str())); + x86_box->SetValue(wxString::FromAscii(StringFromFormat("(no translation)").c_str())); + return; + } } Jit64::JitBlock *block = jit.GetBlock(block_num); + // 800031f0 // == Fill in x86 box memset(xDis, 0, 65536); |
