Fix MIPS SC
authorPaul Brook <paul@codesourcery.com>
Sun, 12 Jul 2009 12:08:59 +0000 (13:08 +0100)
committerPaul Brook <paul@codesourcery.com>
Sun, 12 Jul 2009 12:11:25 +0000 (13:11 +0100)
Fix botched merge of op_ldst_sc calls to match actual implementation.
Thanks to Aurelien Jarno for diagnosing this.

Signed-off-by: Paul Brook <paul@codesourcery.com>

target-mips/translate.c

index cf467f8..cc8b329 100644 (file)
@@ -1174,13 +1174,13 @@ static void gen_st_cond (DisasContext *ctx, uint32_t opc, int rt,
 #if defined(TARGET_MIPS64)
     case OPC_SCD:
         save_cpu_state(ctx, 0);
-        op_ldst_scd(t0, t1, t0, ctx);
+        op_ldst_scd(t1, t0, rt, ctx);
         opn = "scd";
         break;
 #endif
     case OPC_SC:
         save_cpu_state(ctx, 0);
-        op_ldst_sc(t0, t1, t0, ctx);
+        op_ldst_sc(t1, t0, rt, ctx);
         opn = "sc";
         break;
     }