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 <aurelien@aurel32.net> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5759 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
66ba317c90
commit
12d961385b
@ -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();
|
||||
|
Loading…
Reference in New Issue
Block a user