ThreadManager: Sync async reads on accurate gpu.

This commit is contained in:
Fernando Sahmkow
2020-02-17 22:29:04 -04:00
parent 57fdbd9b89
commit 165ae823f5
9 changed files with 48 additions and 8 deletions

View File

@ -49,13 +49,9 @@ public:
/// Records a GPU query and caches it
virtual void Query(GPUVAddr gpu_addr, QueryType type, std::optional<u64> timestamp) = 0;
virtual void SignalFence(GPUVAddr addr, u32 value) {
virtual void SignalFence(GPUVAddr addr, u32 value) {}
}
virtual void ReleaseFences() {
}
virtual void ReleaseFences() {}
/// Notify rasterizer that all caches should be flushed to Switch memory
virtual void FlushAll() = 0;
@ -63,6 +59,8 @@ public:
/// Notify rasterizer that any caches of the specified region should be flushed to Switch memory
virtual void FlushRegion(VAddr addr, u64 size) = 0;
virtual bool MustFlushRegion(VAddr addr, u64 size) = 0;
/// Notify rasterizer that any caches of the specified region should be invalidated
virtual void InvalidateRegion(VAddr addr, u64 size) = 0;