summaryrefslogtreecommitdiff
path: root/src/video_core/fence_manager.h
diff options
context:
space:
mode:
authorGravatar Fernando Sahmkow2021-07-08 03:05:23 +0200
committerGravatar Fernando Sahmkow2021-07-09 22:20:36 +0200
commit4a0951733621a89a5048e7ff5d44ea4f4fbc7461 (patch)
treee14c142d265d32b2adb6e202b46c035226cc9eac /src/video_core/fence_manager.h
parentBufferCache: Additional download fixes. (diff)
downloadyuzu-4a0951733621a89a5048e7ff5d44ea4f4fbc7461.tar.gz
yuzu-4a0951733621a89a5048e7ff5d44ea4f4fbc7461.tar.xz
yuzu-4a0951733621a89a5048e7ff5d44ea4f4fbc7461.zip
Fence Manager: remove reference fencing.
Diffstat (limited to 'src/video_core/fence_manager.h')
-rw-r--r--src/video_core/fence_manager.h23
1 files changed, 2 insertions, 21 deletions
diff --git a/src/video_core/fence_manager.h b/src/video_core/fence_manager.h
index b702b2015..34dc6c596 100644
--- a/src/video_core/fence_manager.h
+++ b/src/video_core/fence_manager.h
@@ -60,23 +60,6 @@ public:
60 buffer_cache.AccumulateFlushes(); 60 buffer_cache.AccumulateFlushes();
61 } 61 }
62 62
63 void SignalReference() {
64 // Only sync references on High
65 if (Settings::values.gpu_accuracy.GetValue() != Settings::GPUAccuracy::High) {
66 return;
67 }
68 TryReleasePendingFences();
69 const bool should_flush = ShouldFlush();
70 CommitAsyncFlushes();
71 TFence new_fence = CreateFence(0, 0, !should_flush);
72 fences.push(new_fence);
73 QueueFence(new_fence);
74 if (should_flush) {
75 rasterizer.FlushCommands();
76 }
77 rasterizer.SyncGuestHost();
78 }
79
80 void SignalSemaphore(GPUVAddr addr, u32 value) { 63 void SignalSemaphore(GPUVAddr addr, u32 value) {
81 TryReleasePendingFences(); 64 TryReleasePendingFences();
82 const bool should_flush = ShouldFlush(); 65 const bool should_flush = ShouldFlush();
@@ -111,10 +94,8 @@ public:
111 } 94 }
112 PopAsyncFlushes(); 95 PopAsyncFlushes();
113 if (current_fence->IsSemaphore()) { 96 if (current_fence->IsSemaphore()) {
114 if (current_fence->GetAddress() != 0) { 97 gpu_memory.template Write<u32>(current_fence->GetAddress(),
115 gpu_memory.template Write<u32>(current_fence->GetAddress(), 98 current_fence->GetPayload());
116 current_fence->GetPayload());
117 }
118 } else { 99 } else {
119 gpu.IncrementSyncPoint(current_fence->GetPayload()); 100 gpu.IncrementSyncPoint(current_fence->GetPayload());
120 } 101 }