From 0e6937a35905fd7dae02b6032fbea339c99cd52d Mon Sep 17 00:00:00 2001 From: Eladash Date: Sat, 2 May 2020 08:16:21 +0300 Subject: [PATCH] SPU GETLLAR: Don't use loop detection for TSX --- rpcs3/Emu/Cell/SPUThread.cpp | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/rpcs3/Emu/Cell/SPUThread.cpp b/rpcs3/Emu/Cell/SPUThread.cpp index 2a82e943f1..aed63e5c77 100644 --- a/rpcs3/Emu/Cell/SPUThread.cpp +++ b/rpcs3/Emu/Cell/SPUThread.cpp @@ -1785,20 +1785,10 @@ bool spu_thread::process_mfc_cmd() const u32 addr = ch_mfc_cmd.eal & -128; const auto& data = vm::_ref(addr); - if (addr == raddr && g_cfg.core.spu_loop_detection && rtime == vm::reservation_acquire(addr, 128) && cmp_rdata(rdata, data)) + if (addr == raddr && !g_use_rtm && g_cfg.core.spu_loop_detection && rtime == vm::reservation_acquire(addr, 128) && cmp_rdata(rdata, data)) { - if (g_use_rtm) - { - state += cpu_flag::wait; - } - // Spinning, might as well yield cpu resources std::this_thread::yield(); - - if (test_stopped()) - { - return false; - } } auto& dst = _ref(ch_mfc_cmd.lsa & 0x3ff80);