Invalidated a wider range in the JIT cache to force recompile updated code in the ICache. This fixes the crashes in Mario Power Tennis and the remaining games in Mario & Sonic at the Olympic Winter Games.
Fixes issue 2102. Fixes issue 2751.
This commit is contained in:
parent
c0498ca831
commit
18d9a275e7
|
@ -418,17 +418,17 @@ bool JitBlock::ContainsAddress(u32 em_address)
|
||||||
if (address & JIT_ICACHE_VMEM_BIT)
|
if (address & JIT_ICACHE_VMEM_BIT)
|
||||||
{
|
{
|
||||||
u32 cacheaddr = address & JIT_ICACHE_MASK;
|
u32 cacheaddr = address & JIT_ICACHE_MASK;
|
||||||
memset(iCacheVMEM + cacheaddr, JIT_ICACHE_INVALID_BYTE, 32);
|
memset(iCacheVMEM + cacheaddr, JIT_ICACHE_INVALID_BYTE, 96);
|
||||||
}
|
}
|
||||||
else if (address & JIT_ICACHE_EXRAM_BIT)
|
else if (address & JIT_ICACHE_EXRAM_BIT)
|
||||||
{
|
{
|
||||||
u32 cacheaddr = address & JIT_ICACHEEX_MASK;
|
u32 cacheaddr = address & JIT_ICACHEEX_MASK;
|
||||||
memset(iCacheEx + cacheaddr, JIT_ICACHE_INVALID_BYTE, 32);
|
memset(iCacheEx + cacheaddr, JIT_ICACHE_INVALID_BYTE, 96);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
u32 cacheaddr = address & JIT_ICACHE_MASK;
|
u32 cacheaddr = address & JIT_ICACHE_MASK;
|
||||||
memset(iCache + cacheaddr, JIT_ICACHE_INVALID_BYTE, 32);
|
memset(iCache + cacheaddr, JIT_ICACHE_INVALID_BYTE, 96);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue