mirror of
https://git.eden-emu.dev/eden-emu/eden.git
synced 2025-10-18 07:17:53 +00:00
FenceManager: Manage syncpoints and rename fences to semaphores.
This commit is contained in:
parent
87ddc6a29f
commit
af9f901764
11 changed files with 123 additions and 25 deletions
|
@ -543,7 +543,7 @@ void RasterizerVulkan::SyncGuestHost() {
|
|||
buffer_cache.SyncGuestHost();
|
||||
}
|
||||
|
||||
void RasterizerVulkan::SignalFence(GPUVAddr addr, u32 value) {
|
||||
void RasterizerVulkan::SignalSemaphore(GPUVAddr addr, u32 value) {
|
||||
auto& gpu{system.GPU()};
|
||||
auto& memory_manager{gpu.MemoryManager()};
|
||||
memory_manager.Write<u32>(addr, value);
|
||||
|
@ -553,7 +553,19 @@ void RasterizerVulkan::SignalFence(GPUVAddr addr, u32 value) {
|
|||
memory_manager.Write<u32>(addr, value);
|
||||
return;
|
||||
}
|
||||
fence_manager.SignalFence(addr, value);
|
||||
fence_manager.SignalSemaphore(addr, value);
|
||||
*/
|
||||
}
|
||||
|
||||
void RasterizerVulkan::SignalSyncPoint(u32 value) {
|
||||
auto& gpu{system.GPU()};
|
||||
gpu.IncrementSyncPoint(value);
|
||||
/*
|
||||
if (!gpu.IsAsync()) {
|
||||
gpu.IncrementSyncPoint(value);
|
||||
return;
|
||||
}
|
||||
fence_manager.SignalSyncPoint(value);
|
||||
*/
|
||||
}
|
||||
|
||||
|
|
|
@ -122,7 +122,8 @@ public:
|
|||
void InvalidateRegion(VAddr addr, u64 size) override;
|
||||
void OnCPUWrite(VAddr addr, u64 size) override;
|
||||
void SyncGuestHost() override;
|
||||
void SignalFence(GPUVAddr addr, u32 value) override;
|
||||
void SignalSemaphore(GPUVAddr addr, u32 value) override;
|
||||
void SignalSyncPoint(u32 value) override;
|
||||
void ReleaseFences() override;
|
||||
void FlushAndInvalidateRegion(VAddr addr, u64 size) override;
|
||||
void FlushCommands() override;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue