aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/dma_pusher.cpp
AgeCommit message (Collapse)Author
2019-03-08dma_pusher: Store command_list_header by copyReinUsesLisp
Instead of holding a reference that will get invalidated by dma_pushbuffer.pop(), hold it as a copy. This doesn't have any performance cost since CommandListHeader is 8 bytes long.
2019-02-19video_core/dma_pusher: Simplyfy Step() logic.Markus Wick
As fetching command list headers and and the list of command headers is a fixed 1:1 relation now, they can be implemented within a single call. This cleans up the Step() logic quite a bit.
2019-02-19video_core/dma_pusher: The full list of headers at once.Markus Wick
Fetching every u32 from memory leads to a big overhead. So let's fetch all of them as a block if possible. This reduces the Memory::* calls by the dma_pusher by a factor of 10.
2019-02-03video_core: Assert on invalid GPU to CPU address queriesReinUsesLisp
2018-11-27dma_pushbuffer: Optimize to avoid loop and copy on Push.bunnei
2018-11-27gpu: Move command list profiling to DmaPusher::DispatchCalls.bunnei
2018-11-26gpu: Rewrite GPU command list processing with DmaPusher class.bunnei
- More accurate impl., fixes Undertale (among other games).