mirror of
https://github.com/hrydgard/ppsspp.git
synced 2025-04-02 11:01:50 -04:00
Avoid leaving the fast runloop on jumps.
Jumps are actually very common in some games, like FF4 and Crisis Core, and tons more. They are used to jump around vertex data. Improves performance by a few percent in FF4.
This commit is contained in:
parent
641064f0bc
commit
4fbb245382
1 changed files with 6 additions and 2 deletions
|
@ -565,8 +565,12 @@ void GPUCommon::UpdatePC(u32 currentPC, u32 newPC) {
|
|||
|
||||
gpuStats.gpuCommandsAtCallLevel[std::min(currentList->stackptr, 3)] += executed;
|
||||
|
||||
// Exit the runloop and recalculate things. This isn't common.
|
||||
downcount = 0;
|
||||
// Exit the runloop and recalculate things. This happens a lot in some games.
|
||||
easy_guard innerGuard(listLock);
|
||||
if (currentList)
|
||||
downcount = currentList->stall == 0 ? 0x0FFFFFFF : (currentList->stall - cycleLastPC) / 4;
|
||||
else
|
||||
downcount = 0;
|
||||
}
|
||||
|
||||
void GPUCommon::ReapplyGfxState() {
|
||||
|
|
Loading…
Add table
Reference in a new issue