aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornotaz2011-03-17 23:47:26 +0200
committernotaz2011-03-17 23:50:39 +0200
commit2adcd6fad4594a18025b4f00c49e43a23f8f8992 (patch)
tree5f41d73c2b8e9fbf04c29e91b5a5340790115d98
parent149a4d341379a9aa191b63fa3b78d28d33d5c19d (diff)
downloadpcsx_rearmed-2adcd6fad4594a18025b4f00c49e43a23f8f8992.tar.gz
pcsx_rearmed-2adcd6fad4594a18025b4f00c49e43a23f8f8992.tar.bz2
pcsx_rearmed-2adcd6fad4594a18025b4f00c49e43a23f8f8992.zip
drc: ujump DS $ra overwrite fix?
-rw-r--r--libpcsxcore/new_dynarec/new_dynarec.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libpcsxcore/new_dynarec/new_dynarec.c b/libpcsxcore/new_dynarec/new_dynarec.c
index 975cce7..1fe2c0c 100644
--- a/libpcsxcore/new_dynarec/new_dynarec.c
+++ b/libpcsxcore/new_dynarec/new_dynarec.c
@@ -8886,6 +8886,8 @@ int new_recompile_block(int addr)
clear_const(&current,rt1[i]);
alloc_cc(&current,i);
dirty_reg(&current,CCREG);
+ ooo[i]=1;
+ delayslot_alloc(&current,i+1);
if (rt1[i]==31) {
alloc_reg(&current,i,31);
dirty_reg(&current,31);
@@ -8896,8 +8898,6 @@ int new_recompile_block(int addr)
#endif
//current.is32|=1LL<<rt1[i];
}
- ooo[i]=1;
- delayslot_alloc(&current,i+1);
//current.isconst=0; // DEBUG
ds=1;
//printf("i=%d, isconst=%x\n",i,current.isconst);