]> xenbits.xensource.com Git - people/liuw/qemu.git/commitdiff
target-ppc: mffs. Should Set CR1 from FPSCR Bits
authorTom Musta <tommusta@gmail.com>
Wed, 12 Nov 2014 21:46:01 +0000 (15:46 -0600)
committerAlexander Graf <agraf@suse.de>
Wed, 7 Jan 2015 15:16:25 +0000 (16:16 +0100)
Update the Move From FPSCR (mffs.) instruction to correctly
set CR[1] from FPSCR[FX,FEX,VX,OX].

Signed-off-by: Tom Musta <tommusta@gmail.com>
Signed-off-by: Alexander Graf <agraf@suse.de>
target-ppc/translate.c

index 35c3a16091eb70ebe2833cae30d9289ff0f753c4..32c9f49fe07004daa5dee49f01016d109d8f6c0c 100644 (file)
@@ -2504,7 +2504,9 @@ static void gen_mffs(DisasContext *ctx)
     }
     gen_reset_fpstatus();
     tcg_gen_extu_tl_i64(cpu_fpr[rD(ctx->opcode)], cpu_fpscr);
-    gen_compute_fprf(cpu_fpr[rD(ctx->opcode)], 0, Rc(ctx->opcode) != 0);
+    if (unlikely(Rc(ctx->opcode))) {
+        gen_set_cr1_from_fpscr(ctx);
+    }
 }
 
 /* mtfsb0 */