diff options
| author | 2023-06-28 06:28:13 +0200 | |
|---|---|---|
| committer | 2023-06-28 19:34:21 +0200 | |
| commit | 47d0d292d5cc5f0404e126023279db7decd532ac (patch) | |
| tree | a43e59102a9db2a124c7473842fbf0d661ff628e /src/video_core/renderer_vulkan | |
| parent | Merge pull request #10837 from liamwhite/mali-support (diff) | |
| download | yuzu-47d0d292d5cc5f0404e126023279db7decd532ac.tar.gz yuzu-47d0d292d5cc5f0404e126023279db7decd532ac.tar.xz yuzu-47d0d292d5cc5f0404e126023279db7decd532ac.zip | |
MemoryTracking: Initial setup of atomic writes.
Diffstat (limited to 'src/video_core/renderer_vulkan')
| -rw-r--r-- | src/video_core/renderer_vulkan/vk_rasterizer.cpp | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/src/video_core/renderer_vulkan/vk_rasterizer.cpp b/src/video_core/renderer_vulkan/vk_rasterizer.cpp index f7c0d939a..a63a29e61 100644 --- a/src/video_core/renderer_vulkan/vk_rasterizer.cpp +++ b/src/video_core/renderer_vulkan/vk_rasterizer.cpp | |||
| @@ -570,7 +570,7 @@ void RasterizerVulkan::OnCPUWrite(VAddr addr, u64 size) { | |||
| 570 | if (addr == 0 || size == 0) { | 570 | if (addr == 0 || size == 0) { |
| 571 | return; | 571 | return; |
| 572 | } | 572 | } |
| 573 | pipeline_cache.OnCPUWrite(addr, size); | 573 | |
| 574 | { | 574 | { |
| 575 | std::scoped_lock lock{texture_cache.mutex}; | 575 | std::scoped_lock lock{texture_cache.mutex}; |
| 576 | texture_cache.WriteMemory(addr, size); | 576 | texture_cache.WriteMemory(addr, size); |
| @@ -579,14 +579,11 @@ void RasterizerVulkan::OnCPUWrite(VAddr addr, u64 size) { | |||
| 579 | std::scoped_lock lock{buffer_cache.mutex}; | 579 | std::scoped_lock lock{buffer_cache.mutex}; |
| 580 | buffer_cache.CachedWriteMemory(addr, size); | 580 | buffer_cache.CachedWriteMemory(addr, size); |
| 581 | } | 581 | } |
| 582 | pipeline_cache.InvalidateRegion(addr, size); | ||
| 582 | } | 583 | } |
| 583 | 584 | ||
| 584 | void RasterizerVulkan::InvalidateGPUCache() { | 585 | void RasterizerVulkan::InvalidateGPUCache() { |
| 585 | pipeline_cache.SyncGuestHost(); | 586 | gpu.InvalidateGPUCache(); |
| 586 | { | ||
| 587 | std::scoped_lock lock{buffer_cache.mutex}; | ||
| 588 | buffer_cache.FlushCachedWrites(); | ||
| 589 | } | ||
| 590 | } | 587 | } |
| 591 | 588 | ||
| 592 | void RasterizerVulkan::UnmapMemory(VAddr addr, u64 size) { | 589 | void RasterizerVulkan::UnmapMemory(VAddr addr, u64 size) { |