From 40a3b5c918dd852f30d46a2c2ed2cca3eefc30ea Mon Sep 17 00:00:00 2001 From: vlj Date: Fri, 26 Jun 2015 22:00:49 +0200 Subject: [PATCH] d3d12: Mark semaphore location as volatile --- rpcs3/Emu/RSX/D3D12/D3D12GSRender.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rpcs3/Emu/RSX/D3D12/D3D12GSRender.cpp b/rpcs3/Emu/RSX/D3D12/D3D12GSRender.cpp index ba31947759..8ac0a0d2a0 100644 --- a/rpcs3/Emu/RSX/D3D12/D3D12GSRender.cpp +++ b/rpcs3/Emu/RSX/D3D12/D3D12GSRender.cpp @@ -1483,7 +1483,7 @@ void D3D12GSRender::semaphorePFIFOAcquire(u32 offset, u32 value) const std::chrono::time_point enterWait = std::chrono::system_clock::now(); while (true) { - u32 val = vm::read32(m_label_addr + offset); + volatile u32 val = vm::read32(m_label_addr + offset); if (val == value) break; std::chrono::time_point waitPoint = std::chrono::system_clock::now(); long long elapsedTime = std::chrono::duration_cast(waitPoint - enterWait).count();