]> xenbits.xensource.com Git - qemu-xen.git/commitdiff
target/sh4: fold ctx->bstate = BS_BRANCH into gen_conditional_jump
authorAurelien Jarno <aurelien@aurel32.net>
Mon, 1 May 2017 21:20:43 +0000 (23:20 +0200)
committerAurelien Jarno <aurelien@aurel32.net>
Sat, 13 May 2017 09:18:22 +0000 (11:18 +0200)
Reviewed-by: Richard Henderson <rth@twiddle.net>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
target/sh4/translate.c

index 8cee7d333f76b6b1b9fe32123acd21fd6474dc1d..a4c7a0895b12a413ddfef4a3a18cfb7a616c0150 100644 (file)
@@ -279,6 +279,7 @@ static void gen_conditional_jump(DisasContext * ctx,
     gen_goto_tb(ctx, 0, ifnott);
     gen_set_label(l1);
     gen_goto_tb(ctx, 1, ift);
+    ctx->bstate = BS_BRANCH;
 }
 
 /* Delayed conditional jump (bt or bf) */
@@ -1158,9 +1159,7 @@ static void _decode_opc(DisasContext * ctx)
        return;
     case 0x8b00:               /* bf label */
        CHECK_NOT_DELAY_SLOT
-           gen_conditional_jump(ctx, ctx->pc + 2,
-                                ctx->pc + 4 + B7_0s * 2);
-       ctx->bstate = BS_BRANCH;
+        gen_conditional_jump(ctx, ctx->pc + 2, ctx->pc + 4 + B7_0s * 2);
        return;
     case 0x8f00:               /* bf/s label */
        CHECK_NOT_DELAY_SLOT
@@ -1170,9 +1169,7 @@ static void _decode_opc(DisasContext * ctx)
        return;
     case 0x8900:               /* bt label */
        CHECK_NOT_DELAY_SLOT
-           gen_conditional_jump(ctx, ctx->pc + 4 + B7_0s * 2,
-                                ctx->pc + 2);
-       ctx->bstate = BS_BRANCH;
+        gen_conditional_jump(ctx, ctx->pc + 4 + B7_0s * 2, ctx->pc + 2);
        return;
     case 0x8d00:               /* bt/s label */
        CHECK_NOT_DELAY_SLOT