From 801e6114b602bc84646c02cb94fd66220c51eb1a Mon Sep 17 00:00:00 2001 From: eladash Date: Thu, 14 Mar 2019 18:30:19 +0200 Subject: [PATCH] rsx: Use relaxed store on fifo ctrl registers --- rpcs3/Emu/RSX/RSXFIFO.cpp | 5 ++--- rpcs3/Emu/RSX/RSXFIFO.h | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/rpcs3/Emu/RSX/RSXFIFO.cpp b/rpcs3/Emu/RSX/RSXFIFO.cpp index 291dc98790..8849bd10bb 100644 --- a/rpcs3/Emu/RSX/RSXFIFO.cpp +++ b/rpcs3/Emu/RSX/RSXFIFO.cpp @@ -60,8 +60,7 @@ namespace rsx } // Update ctrl registers - m_ctrl->get = get; - m_internal_get = get; + m_ctrl->get.release(m_internal_get = get); m_remaining_commands = 0; // Clear memwatch spinner @@ -167,7 +166,7 @@ namespace rsx if (!count) { - m_ctrl->get.store(m_internal_get + 4); + m_ctrl->get.release(m_internal_get + 4); data.reg = FIFO_NOP; return; } diff --git a/rpcs3/Emu/RSX/RSXFIFO.h b/rpcs3/Emu/RSX/RSXFIFO.h index 3ec60da0f4..3bae4d3d5d 100644 --- a/rpcs3/Emu/RSX/RSXFIFO.h +++ b/rpcs3/Emu/RSX/RSXFIFO.h @@ -114,7 +114,7 @@ namespace rsx ~FIFO_control() {} u32 get_pos() { return m_internal_get; } - void sync_get() { m_ctrl->get.store(m_internal_get); } + void sync_get() { m_ctrl->get.release(m_internal_get); } void inc_get(bool wait); void set_get(u32 get); void set_put(u32 put);