Skip to content

Commit 0289320

Browse files
author
Gillou68310
committed
new_dynarec: Fix #552
1 parent 40aed8a commit 0289320

File tree

2 files changed

+6
-2
lines changed

2 files changed

+6
-2
lines changed

src/device/r4300/new_dynarec/new_dynarec.c

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1900,7 +1900,7 @@ static void add_link(u_int vaddr,void *src)
19001900
//inv_debug("add_link: Pointer is to %x\n",(intptr_t)ptr);
19011901
}
19021902

1903-
struct ll_entry *get_clean(struct r4300_core* r4300,u_int vaddr,u_int flags)
1903+
static struct ll_entry *get_clean(struct r4300_core* r4300,u_int vaddr,u_int flags)
19041904
{
19051905
u_int page=(vaddr^0x80000000)>>12;
19061906
if(page>262143&&r4300->cp0.tlb.LUT_r[vaddr>>12]) page=(r4300->cp0.tlb.LUT_r[vaddr>>12]^0x80000000)>>12;
@@ -1916,7 +1916,7 @@ struct ll_entry *get_clean(struct r4300_core* r4300,u_int vaddr,u_int flags)
19161916
return NULL;
19171917
}
19181918

1919-
struct ll_entry *get_dirty(struct r4300_core* r4300,u_int vaddr,u_int flags)
1919+
static struct ll_entry *get_dirty(struct r4300_core* r4300,u_int vaddr,u_int flags)
19201920
{
19211921
u_int page=(vaddr^0x80000000)>>12;
19221922
u_int vpage=page;
@@ -8207,6 +8207,9 @@ int new_recompile_block(int addr)
82078207
if(ba[j]==start+i*4+4) done=j=0;
82088208
if(ba[j]==start+i*4+8) done=j=0;
82098209
}
8210+
// Tonic trouble is weird!
8211+
if(type==CJUMP)
8212+
done=0;
82108213
}
82118214
else {
82128215
if(stop_after_jal) done=1;

src/device/r4300/new_dynarec/recomp_dbg.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@
4949
#define stop_after_jal recomp_dbg_stop_after_jal
5050

5151
/* Rename non-static functions */
52+
#define verify_dirty recomp_dbg_verify_dirty
5253
#define clean_blocks recomp_dbg_clean_blocks
5354
#define get_addr recomp_dbg_get_addr
5455
#define get_addr_32 recomp_dbg_get_addr_32

0 commit comments

Comments
 (0)