diff --git a/rpcs3/Emu/Cell/SPURecompiler.cpp b/rpcs3/Emu/Cell/SPURecompiler.cpp index 789e4440c5..b0460990d6 100644 --- a/rpcs3/Emu/Cell/SPURecompiler.cpp +++ b/rpcs3/Emu/Cell/SPURecompiler.cpp @@ -3979,10 +3979,16 @@ public: { if (m_block_info[target / 4]) { - targets.emplace(target, add_block(target)); + targets.emplace(target, nullptr); } } + // Initialize target basic blocks + for (auto& pair : targets) + { + pair.second = add_block(pair.first); + } + // Get jump table bounds (optimization) const u32 start = targets.begin()->first; const u32 end = targets.rbegin()->first + 4;