From c2ef5a7b1c846d7c392717104b696a789c03642c Mon Sep 17 00:00:00 2001 From: aurel32 Date: Thu, 20 Nov 2008 06:41:29 +0000 Subject: [PATCH] target-sh4: fix fldi0/fldi1 fldi0/fldi1 should be executed as a nop if FPSCR.FR is set instead of generating an exception. Reported by Laurent Desnogues. Signed-off-by: Aurelien Jarno git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5759 c046a42c-6fe2-441c-8c8c-71466251a162 --- target-sh4/translate.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/target-sh4/translate.c b/target-sh4/translate.c index f8371e2..84a3f40 100644 --- a/target-sh4/translate.c +++ b/target-sh4/translate.c @@ -1670,15 +1670,13 @@ static void _decode_opc(DisasContext * ctx) case 0xf08d: /* fldi0 FRn - FPSCR: R[PR] */ if (!(ctx->fpscr & FPSCR_PR)) { tcg_gen_movi_i32(cpu_fregs[FREG(B11_8)], 0); - return; } - break; + return; case 0xf09d: /* fldi1 FRn - FPSCR: R[PR] */ if (!(ctx->fpscr & FPSCR_PR)) { tcg_gen_movi_i32(cpu_fregs[FREG(B11_8)], 0x3f800000); - return; } - break; + return; case 0xf0ad: /* fcnvsd FPUL,DRn */ { TCGv_i64 fp = tcg_temp_new_i64(); -- 2.7.4