diff options
| author | Fernando Sahmkow <fsahmkow27@gmail.com> | 2020-02-17 22:29:04 -0400 |
|---|---|---|
| committer | Fernando Sahmkow <fsahmkow27@gmail.com> | 2020-04-22 11:36:12 -0400 |
| commit | 165ae823f522aa981129927f42e76763a9fa6006 (patch) | |
| tree | 5b20ac78e3946e50aa37f76a1446a42654bf3511 /src/video_core/texture_cache/texture_cache.h | |
| parent | 57fdbd9b8992de4eaf2b262e6a2cece43c141894 (diff) | |
ThreadManager: Sync async reads on accurate gpu.
Diffstat (limited to 'src/video_core/texture_cache/texture_cache.h')
| -rw-r--r-- | src/video_core/texture_cache/texture_cache.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/video_core/texture_cache/texture_cache.h b/src/video_core/texture_cache/texture_cache.h index 04fe69c11..e251a30c3 100644 --- a/src/video_core/texture_cache/texture_cache.h +++ b/src/video_core/texture_cache/texture_cache.h @@ -116,6 +116,21 @@ public: } } + bool MustFlushRegion(VAddr addr, std::size_t size) { + std::lock_guard lock{mutex}; + + auto surfaces = GetSurfacesInRegion(addr, size); + if (surfaces.empty()) { + return false; + } + for (const auto& surface : surfaces) { + if (surface->IsModified()) { + return true; + } + } + return false; + } + TView GetTextureSurface(const Tegra::Texture::TICEntry& tic, const VideoCommon::Shader::Sampler& entry) { std::lock_guard lock{mutex}; |
