CachedInterpreter: Skip Updating Instruction PERFMON When There Are None

This commit is contained in:
mitaclaw 2024-04-10 04:09:37 -07:00
parent 69aca2fbfc
commit 3073e8fd40
1 changed files with 8 additions and 4 deletions

View File

@ -364,8 +364,10 @@ void CachedInterpreter::Jit(u32 address)
if (endblock) if (endblock)
{ {
m_code.emplace_back(EndBlock, js.downcountAmount); m_code.emplace_back(EndBlock, js.downcountAmount);
m_code.emplace_back(UpdateNumLoadStoreInstructions, js.numLoadStoreInst); if (js.numLoadStoreInst != 0)
m_code.emplace_back(UpdateNumFloatingPointInstructions, js.numFloatingPointInst); m_code.emplace_back(UpdateNumLoadStoreInstructions, js.numLoadStoreInst);
if (js.numFloatingPointInst != 0)
m_code.emplace_back(UpdateNumFloatingPointInstructions, js.numFloatingPointInst);
} }
} }
} }
@ -373,8 +375,10 @@ void CachedInterpreter::Jit(u32 address)
{ {
m_code.emplace_back(WriteBrokenBlockNPC, nextPC); m_code.emplace_back(WriteBrokenBlockNPC, nextPC);
m_code.emplace_back(EndBlock, js.downcountAmount); m_code.emplace_back(EndBlock, js.downcountAmount);
m_code.emplace_back(UpdateNumLoadStoreInstructions, js.numLoadStoreInst); if (js.numLoadStoreInst != 0)
m_code.emplace_back(UpdateNumFloatingPointInstructions, js.numFloatingPointInst); m_code.emplace_back(UpdateNumLoadStoreInstructions, js.numLoadStoreInst);
if (js.numFloatingPointInst != 0)
m_code.emplace_back(UpdateNumFloatingPointInstructions, js.numFloatingPointInst);
} }
m_code.emplace_back(); m_code.emplace_back();