diff --git a/rpcs3/Emu/Cell/PPUAnalyser.cpp b/rpcs3/Emu/Cell/PPUAnalyser.cpp index 7184e06dd6..6ddb097167 100644 --- a/rpcs3/Emu/Cell/PPUAnalyser.cpp +++ b/rpcs3/Emu/Cell/PPUAnalyser.cpp @@ -624,6 +624,14 @@ bool ppu_module::analyse(u32 lib_toc, u32 entry, const u32 sec_end, con // Register new function auto add_func = [&](u32 addr, u32 toc, u32 caller) -> ppu_function_ext& { + if (addr < start || addr >= end || s_ppu_itype.decode(*get_ptr(addr)) == ppu_itype::UNK) + { + if (!fmap.contains(addr)) + { + ppu_log.error("Potentially invalid function has been added: 0x%x", addr); + } + } + ppu_function_ext& func = fmap[addr]; if (caller)