summaryrefslogtreecommitdiffstats
path: root/src/video_core/rasterizer_interface.h
diff options
context:
space:
mode:
authorFernando S <fsahmkow27@gmail.com>2023-01-06 13:31:39 +0100
committerGitHub <noreply@github.com>2023-01-06 13:31:39 +0100
commit5bcbb8de45540bee7a64b7b1867f61c57f51ab88 (patch)
tree49fd1c79dfefba1139ad1577a414ed07293ecf81 /src/video_core/rasterizer_interface.h
parentMerge pull request #9564 from FernandoS27/oops-i-did-it-again (diff)
parentBufferBase: Don't ignore GPU pages. (diff)
downloadyuzu-5bcbb8de45540bee7a64b7b1867f61c57f51ab88.tar
yuzu-5bcbb8de45540bee7a64b7b1867f61c57f51ab88.tar.gz
yuzu-5bcbb8de45540bee7a64b7b1867f61c57f51ab88.tar.bz2
yuzu-5bcbb8de45540bee7a64b7b1867f61c57f51ab88.tar.lz
yuzu-5bcbb8de45540bee7a64b7b1867f61c57f51ab88.tar.xz
yuzu-5bcbb8de45540bee7a64b7b1867f61c57f51ab88.tar.zst
yuzu-5bcbb8de45540bee7a64b7b1867f61c57f51ab88.zip
Diffstat (limited to 'src/video_core/rasterizer_interface.h')
-rw-r--r--src/video_core/rasterizer_interface.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/video_core/rasterizer_interface.h b/src/video_core/rasterizer_interface.h
index f44c7df50..1735b6164 100644
--- a/src/video_core/rasterizer_interface.h
+++ b/src/video_core/rasterizer_interface.h
@@ -6,6 +6,7 @@
#include <functional>
#include <optional>
#include <span>
+#include <utility>
#include "common/common_types.h"
#include "common/polyfill_thread.h"
#include "video_core/cache_types.h"
@@ -95,6 +96,12 @@ public:
virtual void InvalidateRegion(VAddr addr, u64 size,
VideoCommon::CacheType which = VideoCommon::CacheType::All) = 0;
+ virtual void InnerInvalidation(std::span<const std::pair<VAddr, std::size_t>> sequences) {
+ for (const auto& [cpu_addr, size] : sequences) {
+ InvalidateRegion(cpu_addr, size);
+ }
+ }
+
/// Notify rasterizer that any caches of the specified region are desync with guest
virtual void OnCPUWrite(VAddr addr, u64 size) = 0;