Revert "drc: ujump DS $ra overwrite fix?"
authornotaz <notasas@gmail.com>
Thu, 15 Sep 2011 22:09:28 +0000 (01:09 +0300)
committernotaz <notasas@gmail.com>
Mon, 19 Sep 2011 16:01:47 +0000 (19:01 +0300)
This reverts commit 2adcd6fad4594a18025b4f00c49e43a23f8f8992.
That "fix" breaks Delta Force Urban Warfare, supposedly not neded
after Ari64's fixes?

libpcsxcore/new_dynarec/new_dynarec.c

index 893f258..05c54ee 100644 (file)
@@ -8881,8 +8881,6 @@ int new_recompile_block(int addr)
           clear_const(&current,rt1[i]);
           alloc_cc(&current,i);
           dirty_reg(&current,CCREG);
           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);
           if (rt1[i]==31) {
             alloc_reg(&current,i,31);
             dirty_reg(&current,31);
@@ -8893,6 +8891,8 @@ int new_recompile_block(int addr)
             #endif
             //current.is32|=1LL<<rt1[i];
           }
             #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);
           //current.isconst=0; // DEBUG
           ds=1;
           //printf("i=%d, isconst=%x\n",i,current.isconst);