abandon pipelining on jit

fixes Golden Sun Dawn
this makes the cpu state incompatible between interpreter and JIT. That's why switching cpu mode requires a restart(not requiring is stupid anyway) and the pipeline is manually filled when making a save state.
This commit is contained in:
RSDuck
2019-08-17 16:50:48 +02:00
parent ec21172cd9
commit 3001d9492c
10 changed files with 116 additions and 48 deletions

View File

@ -42,6 +42,8 @@ public:
virtual void DoSavestate(Savestate* file);
virtual void FillPipeline() = 0;
virtual void JumpTo(u32 addr, bool restorecpsr = false) = 0;
void RestoreCPSR();
@ -148,6 +150,8 @@ public:
void UpdateRegionTimings(u32 addrstart, u32 addrend);
void FillPipeline();
void JumpTo(u32 addr, bool restorecpsr = false);
void PrefetchAbort();
@ -272,6 +276,8 @@ class ARMv4 : public ARM
public:
ARMv4();
void FillPipeline();
void JumpTo(u32 addr, bool restorecpsr = false);
void Execute();