summaryrefslogtreecommitdiff
path: root/src/video_core/buffer_cache
diff options
context:
space:
mode:
authorGravatar Morph2021-06-27 09:33:58 -0400
committerGravatar GitHub2021-06-27 09:33:58 -0400
commit4df04ad48a2b9f04712ad6627e9712f3625253a9 (patch)
treef66c02d4380eaf2ce4391741edb6dda5d6b0dcde /src/video_core/buffer_cache
parentMerge pull request #6532 from MerryMage/libusb-apple (diff)
parentbuffer_cache: Only flush downloaded size (diff)
downloadyuzu-4df04ad48a2b9f04712ad6627e9712f3625253a9.tar.gz
yuzu-4df04ad48a2b9f04712ad6627e9712f3625253a9.tar.xz
yuzu-4df04ad48a2b9f04712ad6627e9712f3625253a9.zip
Merge pull request #6529 from ReinUsesLisp/reaper-fixups
buffer_cache,texture_cache: Misc fixups from the memory reaper
Diffstat (limited to 'src/video_core/buffer_cache')
-rw-r--r--src/video_core/buffer_cache/buffer_cache.h11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/video_core/buffer_cache/buffer_cache.h b/src/video_core/buffer_cache/buffer_cache.h
index 9d726a6fb..cad7f902d 100644
--- a/src/video_core/buffer_cache/buffer_cache.h
+++ b/src/video_core/buffer_cache/buffer_cache.h
@@ -99,7 +99,7 @@ class BufferCache {
99 }; 99 };
100 100
101public: 101public:
102 static constexpr u32 DEFAULT_SKIP_CACHE_SIZE = 4_KiB; 102 static constexpr u32 DEFAULT_SKIP_CACHE_SIZE = static_cast<u32>(4_KiB);
103 103
104 explicit BufferCache(VideoCore::RasterizerInterface& rasterizer_, 104 explicit BufferCache(VideoCore::RasterizerInterface& rasterizer_,
105 Tegra::Engines::Maxwell3D& maxwell3d_, 105 Tegra::Engines::Maxwell3D& maxwell3d_,
@@ -109,8 +109,6 @@ public:
109 109
110 void TickFrame(); 110 void TickFrame();
111 111
112 void RunGarbageCollector();
113
114 void WriteMemory(VAddr cpu_addr, u64 size); 112 void WriteMemory(VAddr cpu_addr, u64 size);
115 113
116 void CachedWriteMemory(VAddr cpu_addr, u64 size); 114 void CachedWriteMemory(VAddr cpu_addr, u64 size);
@@ -197,6 +195,8 @@ private:
197 ((cpu_addr + size) & ~Core::Memory::PAGE_MASK); 195 ((cpu_addr + size) & ~Core::Memory::PAGE_MASK);
198 } 196 }
199 197
198 void RunGarbageCollector();
199
200 void BindHostIndexBuffer(); 200 void BindHostIndexBuffer();
201 201
202 void BindHostVertexBuffers(); 202 void BindHostVertexBuffers();
@@ -416,8 +416,9 @@ void BufferCache<P>::CachedWriteMemory(VAddr cpu_addr, u64 size) {
416 416
417template <class P> 417template <class P>
418void BufferCache<P>::DownloadMemory(VAddr cpu_addr, u64 size) { 418void BufferCache<P>::DownloadMemory(VAddr cpu_addr, u64 size) {
419 ForEachBufferInRange(cpu_addr, size, 419 ForEachBufferInRange(cpu_addr, size, [&](BufferId, Buffer& buffer) {
420 [&](BufferId, Buffer& buffer) { DownloadBufferMemory(buffer); }); 420 DownloadBufferMemory(buffer, cpu_addr, size);
421 });
421} 422}
422 423
423template <class P> 424template <class P>