JitCache: Split off JIT call from dispatcher.

This avoid flushing the BLR optimization stack on fast_block_cache misses.
This commit is contained in:
degasus committed 2017-01-25 01:51:19 +01:00
1 parent eed64bb0fe
commit d3aee2de08
7 files changed
+58 -35

No files matched your search

@@ -36,6 +36,12 @@ void CachedInterpreter::Shutdown()
void CachedInterpreter::ExecuteOneBlock()
{
const u8* normal_entry = m_block_cache.Dispatch();
if (!normal_entry)
{
Jit(PC);
return;
}
const Instruction* code = reinterpret_cast<const Instruction*>(normal_entry);
for (; code->type != Instruction::INSTRUCTION_ABORT; ++code)