|
|
@ -682,10 +682,20 @@ void RasterizerOpenGL::SyncGuestHost() { |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
void RasterizerOpenGL::SignalFence(GPUVAddr addr, u32 value) { |
|
|
void RasterizerOpenGL::SignalFence(GPUVAddr addr, u32 value) { |
|
|
|
|
|
auto& gpu{system.GPU()}; |
|
|
|
|
|
if (!gpu.IsAsync()) { |
|
|
|
|
|
auto& memory_manager{gpu.MemoryManager()}; |
|
|
|
|
|
memory_manager.Write<u32>(addr, value); |
|
|
|
|
|
return; |
|
|
|
|
|
} |
|
|
fence_manager.SignalFence(addr, value); |
|
|
fence_manager.SignalFence(addr, value); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
void RasterizerOpenGL::ReleaseFences() { |
|
|
void RasterizerOpenGL::ReleaseFences() { |
|
|
|
|
|
auto& gpu{system.GPU()}; |
|
|
|
|
|
if (!gpu.IsAsync()) { |
|
|
|
|
|
return; |
|
|
|
|
|
} |
|
|
fence_manager.WaitPendingFences(); |
|
|
fence_manager.WaitPendingFences(); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|