diff options
| author | 2022-11-20 03:07:14 +0100 | |
|---|---|---|
| committer | 2023-01-01 16:43:58 -0500 | |
| commit | 3630bfaef332768e08ecc0c34cd4bca83a2579f8 (patch) | |
| tree | 6bd52f659411c16300ab437a418df3e0283d1c31 /src/video_core/texture_cache | |
| parent | Vulkan: Allow stagging buffer deferrals. (diff) | |
| download | yuzu-3630bfaef332768e08ecc0c34cd4bca83a2579f8.tar.gz yuzu-3630bfaef332768e08ecc0c34cd4bca83a2579f8.tar.xz yuzu-3630bfaef332768e08ecc0c34cd4bca83a2579f8.zip | |
RasterizerMemory: Add filtering for flushing/invalidation operations.
Diffstat (limited to 'src/video_core/texture_cache')
| -rw-r--r-- | src/video_core/texture_cache/texture_cache.h | 3 | ||||
| -rw-r--r-- | src/video_core/texture_cache/texture_cache_base.h | 2 |
2 files changed, 3 insertions, 2 deletions
diff --git a/src/video_core/texture_cache/texture_cache.h b/src/video_core/texture_cache/texture_cache.h index 27c82cd20..7fe451b5a 100644 --- a/src/video_core/texture_cache/texture_cache.h +++ b/src/video_core/texture_cache/texture_cache.h | |||
| @@ -740,7 +740,8 @@ void TextureCache<P>::UploadImageContents(Image& image, StagingBuffer& staging) | |||
| 740 | const GPUVAddr gpu_addr = image.gpu_addr; | 740 | const GPUVAddr gpu_addr = image.gpu_addr; |
| 741 | 741 | ||
| 742 | if (True(image.flags & ImageFlagBits::AcceleratedUpload)) { | 742 | if (True(image.flags & ImageFlagBits::AcceleratedUpload)) { |
| 743 | gpu_memory->ReadBlockUnsafe(gpu_addr, mapped_span.data(), mapped_span.size_bytes()); | 743 | gpu_memory->ReadBlock(gpu_addr, mapped_span.data(), mapped_span.size_bytes(), |
| 744 | VideoCommon::CacheType::NoTextureCache); | ||
| 744 | const auto uploads = FullUploadSwizzles(image.info); | 745 | const auto uploads = FullUploadSwizzles(image.info); |
| 745 | runtime.AccelerateImageUpload(image, staging, uploads); | 746 | runtime.AccelerateImageUpload(image, staging, uploads); |
| 746 | return; | 747 | return; |
diff --git a/src/video_core/texture_cache/texture_cache_base.h b/src/video_core/texture_cache/texture_cache_base.h index 4fd677a80..6b2898705 100644 --- a/src/video_core/texture_cache/texture_cache_base.h +++ b/src/video_core/texture_cache/texture_cache_base.h | |||
| @@ -203,7 +203,7 @@ public: | |||
| 203 | /// Create channel state. | 203 | /// Create channel state. |
| 204 | void CreateChannel(Tegra::Control::ChannelState& channel) final override; | 204 | void CreateChannel(Tegra::Control::ChannelState& channel) final override; |
| 205 | 205 | ||
| 206 | std::mutex mutex; | 206 | std::recursive_mutex mutex; |
| 207 | 207 | ||
| 208 | private: | 208 | private: |
| 209 | /// Iterate over all page indices in a range | 209 | /// Iterate over all page indices in a range |