Debugger: Fix GDB breakpoints
Jeffrey Pfau jeffrey@endrift.com
Sun, 07 Aug 2016 10:45:50 -0700
2 files changed,
6 insertions(+),
2 deletions(-)
M
CHANGES
→
CHANGES
@@ -16,6 +16,7 @@ - GBA Serialize: Savestates now properly store prefetch
- PSP2: Fix accelerometer range - PSP2: Actually load screen mode setting - Qt: Fix bug in software renderer scaling + - Debugger: Fix GDB breakpoints Misc: - 3DS: Use blip_add_delta_fast for a small speed improvement - OpenGL: Log shader compilation failure
M
src/debugger/gdb-stub.c
→
src/debugger/gdb-stub.c
@@ -295,7 +295,7 @@ struct ARMCore* cpu = stub->d.core->cpu;
const char* readAddress = message; int r; - for (r = 0; r < 16; ++r) { + for (r = 0; r < ARM_PC; ++r) { cpu->gprs[r] = _hex2int(readAddress, 8); readAddress += 8; }@@ -309,10 +309,13 @@ struct ARMCore* cpu = stub->d.core->cpu;
UNUSED(message); int r; int i = 0; - for (r = 0; r < 16; ++r) { + for (r = 0; r < ARM_PC; ++r) { _int2hex32(cpu->gprs[r], &stub->outgoing[i]); i += 8; } + _int2hex32(cpu->gprs[ARM_PC] - (cpu->cpsr.t ? WORD_SIZE_THUMB : WORD_SIZE_ARM), &stub->outgoing[i]); + i += 8; + stub->outgoing[i] = 0; _sendMessage(stub); }