diff options
Diffstat (limited to 'target-mips')
-rw-r--r-- | target-mips/translate.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/target-mips/translate.c b/target-mips/translate.c index 03f3fbb827..386e0e37d1 100644 --- a/target-mips/translate.c +++ b/target-mips/translate.c @@ -3609,6 +3609,8 @@ static void gen_mtc0 (CPUState *env, DisasContext *ctx, TCGv t0, int reg, int se default: goto die; } + /* Stop translation as we may have switched the execution mode */ + ctx->bstate = BS_STOP; break; case 12: switch (sel) { @@ -4791,6 +4793,8 @@ static void gen_dmtc0 (CPUState *env, DisasContext *ctx, TCGv t0, int reg, int s default: goto die; } + /* Stop translation as we may have switched the execution mode */ + ctx->bstate = BS_STOP; break; case 12: switch (sel) { |