diff options
author | liamwhite <liamwhite@users.noreply.github.com> | 2023-06-01 15:06:07 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-06-01 15:06:07 +0200 |
commit | d89b98d8e8428852b39a094f18461f1f049e01b6 (patch) | |
tree | 240cef1e84173900aba72feaecda0f76f23f1be5 /src/video_core | |
parent | Merge pull request #10530 from Kelebek1/syncpt_oob (diff) | |
parent | Fix buffer overlap checking skipping a page for stream score right expand (diff) | |
download | yuzu-d89b98d8e8428852b39a094f18461f1f049e01b6.tar yuzu-d89b98d8e8428852b39a094f18461f1f049e01b6.tar.gz yuzu-d89b98d8e8428852b39a094f18461f1f049e01b6.tar.bz2 yuzu-d89b98d8e8428852b39a094f18461f1f049e01b6.tar.lz yuzu-d89b98d8e8428852b39a094f18461f1f049e01b6.tar.xz yuzu-d89b98d8e8428852b39a094f18461f1f049e01b6.tar.zst yuzu-d89b98d8e8428852b39a094f18461f1f049e01b6.zip |
Diffstat (limited to 'src/video_core')
-rw-r--r-- | src/video_core/buffer_cache/buffer_cache.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/video_core/buffer_cache/buffer_cache.h b/src/video_core/buffer_cache/buffer_cache.h index 427afd5fc..f1ad5f7cb 100644 --- a/src/video_core/buffer_cache/buffer_cache.h +++ b/src/video_core/buffer_cache/buffer_cache.h @@ -1278,7 +1278,7 @@ typename BufferCache<P>::OverlapResult BufferCache<P>::ResolveOverlaps(VAddr cpu const VAddr overlap_cpu_addr = overlap.CpuAddr(); const bool expands_left = overlap_cpu_addr < begin; if (expands_left) { - cpu_addr = begin = overlap_cpu_addr; + begin = overlap_cpu_addr; } const VAddr overlap_end = overlap_cpu_addr + overlap.SizeBytes(); const bool expands_right = overlap_end > end; @@ -1292,7 +1292,7 @@ typename BufferCache<P>::OverlapResult BufferCache<P>::ResolveOverlaps(VAddr cpu has_stream_leap = true; if (expands_right) { begin -= CACHING_PAGESIZE * 256; - cpu_addr = begin; + cpu_addr = begin - CACHING_PAGESIZE; } if (expands_left) { end += CACHING_PAGESIZE * 256; @@ -1315,7 +1315,7 @@ void BufferCache<P>::JoinOverlap(BufferId new_buffer_id, BufferId overlap_id, if (accumulate_stream_score) { new_buffer.IncreaseStreamScore(overlap.StreamScore() + 1); } - boost::container::small_vector<BufferCopy, 1> copies; + boost::container::small_vector<BufferCopy, 10> copies; const size_t dst_base_offset = overlap.CpuAddr() - new_buffer.CpuAddr(); copies.push_back(BufferCopy{ .src_offset = 0, |