mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-29 04:08:55 +00:00
Unify three types of non-FIFO requests to the GPU thread around Common::Event and Common::Flag.
The only possible functionality change is that s_efbAccessRequested and s_swapRequested are no longer reset at init and shutdown of the OGL backend (only; this is the only interaction any files other than MainBase.cpp have with them). I am fairly certain this was entirely vestigial. Possible performance implications: efbAccessReady now uses an Event rather than spinning, which might be slightly slower, but considering the slow loop the flags are being checked in from the GPU thread, I doubt it's noticeable. Also, this uses sequentially consistent rather than release/acquire memory order, which might be slightly slower, especially on ARM... something to improve in Event/Flag, really.
This commit is contained in:
parent
de7294ecc1
commit
e31d6feaa2
5 changed files with 38 additions and 60 deletions
|
@ -1,11 +1,10 @@
|
|||
#pragma once
|
||||
|
||||
#include "Common/CommonTypes.h"
|
||||
#include "Common/Flag.h"
|
||||
|
||||
extern bool s_BackendInitialized;
|
||||
extern u32 s_efbAccessRequested;
|
||||
extern volatile u32 s_FifoShuttingDown;
|
||||
extern volatile u32 s_swapRequested;
|
||||
extern Common::Flag s_swapRequested;
|
||||
|
||||
void VideoFifo_CheckEFBAccess();
|
||||
void VideoFifo_CheckSwapRequestAt(u32 xfbAddr, u32 fbWidth, u32 fbHeight);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue