summaryrefslogtreecommitdiffstats
path: root/src/core/arm/dyncom/arm_dyncom_interpreter.cpp
diff options
context:
space:
mode:
authorpolaris- <nagatospam@gmail.com>2015-10-04 17:22:31 +0200
committerpolaris- <nagatospam@gmail.com>2015-10-04 17:22:31 +0200
commit42928659e8d4ff4edffc36acabe3d9040dbc1326 (patch)
tree96434bbd4878b9a1a6944cc287463d641e56368e /src/core/arm/dyncom/arm_dyncom_interpreter.cpp
parentToggle use_gdbstub in citra GLFW (diff)
downloadyuzu-42928659e8d4ff4edffc36acabe3d9040dbc1326.tar
yuzu-42928659e8d4ff4edffc36acabe3d9040dbc1326.tar.gz
yuzu-42928659e8d4ff4edffc36acabe3d9040dbc1326.tar.bz2
yuzu-42928659e8d4ff4edffc36acabe3d9040dbc1326.tar.lz
yuzu-42928659e8d4ff4edffc36acabe3d9040dbc1326.tar.xz
yuzu-42928659e8d4ff4edffc36acabe3d9040dbc1326.tar.zst
yuzu-42928659e8d4ff4edffc36acabe3d9040dbc1326.zip
Diffstat (limited to '')
-rw-r--r--src/core/arm/dyncom/arm_dyncom_interpreter.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/core/arm/dyncom/arm_dyncom_interpreter.cpp b/src/core/arm/dyncom/arm_dyncom_interpreter.cpp
index 8293f4c60..88be27ab2 100644
--- a/src/core/arm/dyncom/arm_dyncom_interpreter.cpp
+++ b/src/core/arm/dyncom/arm_dyncom_interpreter.cpp
@@ -3583,7 +3583,7 @@ unsigned InterpreterMainLoop(ARMul_State* cpu) {
Common::Profiling::ScopeTimer timer_execute(profile_execute);
MICROPROFILE_SCOPE(DynCom_Execute);
- int breakpoint_offset = -1;
+ GDBStub::BreakpointAddress breakpoint_data;
#undef RM
#undef RS
@@ -3613,7 +3613,7 @@ unsigned InterpreterMainLoop(ARMul_State* cpu) {
cpu->Cpsr &= ~(1 << 5); \
cpu->Cpsr |= cpu->TFlag << 5; \
if (GDBStub::g_server_enabled) { \
- if (GDBStub::IsMemoryBreak() || PC == breakpoint_offset) { \
+ if (GDBStub::IsMemoryBreak() || (breakpoint_data.type != GDBStub::BreakpointType::None && PC == breakpoint_data.address)) { \
GDBStub::Break(); \
goto END; \
} \
@@ -3923,7 +3923,7 @@ unsigned InterpreterMainLoop(ARMul_State* cpu) {
// Find breakpoint if one exists within the block
if (GDBStub::g_server_enabled && GDBStub::IsConnected()) {
- breakpoint_offset = GDBStub::GetNextBreakpointFromAddress(cpu->Reg[15], GDBStub::BreakpointType::Execute);
+ breakpoint_data = GDBStub::GetNextBreakpointFromAddress(cpu->Reg[15], GDBStub::BreakpointType::Execute);
}
inst_base = (arm_inst *)&inst_buf[ptr];