diff options
Diffstat (limited to 'src/tests')
| -rw-r--r-- | src/tests/video_core/memory_tracker.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/tests/video_core/memory_tracker.cpp b/src/tests/video_core/memory_tracker.cpp index 618793668..2dbff21af 100644 --- a/src/tests/video_core/memory_tracker.cpp +++ b/src/tests/video_core/memory_tracker.cpp | |||
| @@ -23,13 +23,13 @@ constexpr VAddr c = 16 * HIGH_PAGE_SIZE; | |||
| 23 | 23 | ||
| 24 | class RasterizerInterface { | 24 | class RasterizerInterface { |
| 25 | public: | 25 | public: |
| 26 | void UpdatePagesCachedCount(VAddr addr, u64 size, int delta) { | 26 | void UpdatePagesCachedCount(VAddr addr, u64 size, bool cache) { |
| 27 | const u64 page_start{addr >> Core::Memory::YUZU_PAGEBITS}; | 27 | const u64 page_start{addr >> Core::Memory::YUZU_PAGEBITS}; |
| 28 | const u64 page_end{(addr + size + Core::Memory::YUZU_PAGESIZE - 1) >> | 28 | const u64 page_end{(addr + size + Core::Memory::YUZU_PAGESIZE - 1) >> |
| 29 | Core::Memory::YUZU_PAGEBITS}; | 29 | Core::Memory::YUZU_PAGEBITS}; |
| 30 | for (u64 page = page_start; page < page_end; ++page) { | 30 | for (u64 page = page_start; page < page_end; ++page) { |
| 31 | int& value = page_table[page]; | 31 | int& value = page_table[page]; |
| 32 | value += delta; | 32 | value += (cache ? 1 : -1); |
| 33 | if (value < 0) { | 33 | if (value < 0) { |
| 34 | throw std::logic_error{"negative page"}; | 34 | throw std::logic_error{"negative page"}; |
| 35 | } | 35 | } |
| @@ -546,4 +546,4 @@ TEST_CASE("MemoryTracker: Cached write downloads") { | |||
| 546 | REQUIRE(!memory_track->IsRegionGpuModified(c + PAGE, PAGE)); | 546 | REQUIRE(!memory_track->IsRegionGpuModified(c + PAGE, PAGE)); |
| 547 | memory_track->MarkRegionAsCpuModified(c, WORD); | 547 | memory_track->MarkRegionAsCpuModified(c, WORD); |
| 548 | REQUIRE(rasterizer.Count() == 0); | 548 | REQUIRE(rasterizer.Count() == 0); |
| 549 | } \ No newline at end of file | 549 | } |