Remove FakeJit and the pre-IR JitBlockCache

FakeJit was the native JIT for architectures without one, but the config
already forces those onto the IR interpreter, so CreateNativeJit() now
returns that instead. The vertex decoder fallback no longer needs
FakeEmitter.

JitBlockCache was the block cache of the pre-IR JITs. Its header keeps
the debug interface types the IR block caches use. Also removes the
JitInterface link hooks only it called, and the JitState fields tied to
it. This fixes a null dereference in the ImDebugger memory section,
which read GetBlockCache(), always null with the IR JITs.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Henrik RydgårdandClaude Opus 5.5 committed 2026-10-15 02:24:25 +02:00
1 parent f672916c77
commit f3c69fc5d1
30 files changed
+14 -1620

No files matched your search

-2
View File
@@ -848,8 +848,6 @@ static void DrawInternals(ImConfig &cfg) {
ImGui::Text("Base pointer: %p", Memory::base);
ImGui::Text("Main memory size: %08x", Memory::g_MemorySize);
if (MIPSComp::jit) {
const JitBlockCache *bc = MIPSComp::jit->GetBlockCache();
ImGui::Text("JIT block cache: %p", bc->GetBlock(0));
ImGui::Text("JIT code cache: %p", MIPSComp::jit->GetCodeBase());
ImGui::Text("MIPS state: %p", currentMIPS);
}