mirror of
https://github.com/hrydgard/ppsspp.git
synced 2026-10-11 05:26:24 +02:00
jit: Lock around changes to the jit pointer.
This commit is contained in:
1 parent
0c6c2fb47a
commit
b8ab7f39df
17 files changed
+87
-33
No files matched your search
+11
-7
@@ -303,15 +303,19 @@ namespace SaveState
|
||||
|
||||
// Memory is a bit tricky when jit is enabled, since there's emuhacks in it.
|
||||
auto savedReplacements = SaveAndClearReplacements();
|
||||
if (MIPSComp::jit && p.mode == p.MODE_WRITE)
|
||||
{
|
||||
std::vector<u32> savedBlocks;
|
||||
savedBlocks = MIPSComp::jit->SaveAndClearEmuHackOps();
|
||||
if (MIPSComp::jit && p.mode == p.MODE_WRITE) {
|
||||
std::lock_guard<std::recursive_mutex> guard(MIPSComp::jitLock);
|
||||
if (MIPSComp::jit) {
|
||||
std::vector<u32> savedBlocks;
|
||||
savedBlocks = MIPSComp::jit->SaveAndClearEmuHackOps();
|
||||
Memory::DoState(p);
|
||||
MIPSComp::jit->RestoreSavedEmuHackOps(savedBlocks);
|
||||
} else {
|
||||
Memory::DoState(p);
|
||||
}
|
||||
} else {
|
||||
Memory::DoState(p);
|
||||
MIPSComp::jit->RestoreSavedEmuHackOps(savedBlocks);
|
||||
}
|
||||
else
|
||||
Memory::DoState(p);
|
||||
RestoreSavedReplacements(savedReplacements);
|
||||
|
||||
MemoryStick_DoState(p);
|
||||
|
||||
Reference in new issue
Block a user