diff options
author | Laurent Vivier <laurent@vivier.eu> | 2018-01-04 02:28:57 +0100 |
---|---|---|
committer | Laurent Vivier <laurent@vivier.eu> | 2018-01-04 16:43:24 +0100 |
commit | 7cd7b5ca9be805e8a4ced4c07014c24e34812f27 (patch) | |
tree | a2ba098f03b09ddfd877c52b6bfa875ae48d0cc1 /target/m68k | |
parent | 281f327487c9c9b1599f93c589a408bbf4a651b8 (diff) |
target-m68k: sync CC_OP before gen_jmp_tb()
And remove update_cc_op() from gen_exception() because there is
one in gen_jmp_im().
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20180104012913.30763-2-laurent@vivier.eu>
Diffstat (limited to 'target/m68k')
-rw-r--r-- | target/m68k/translate.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/target/m68k/translate.c b/target/m68k/translate.c index bbda7399ec..0e9d651a2a 100644 --- a/target/m68k/translate.c +++ b/target/m68k/translate.c @@ -270,7 +270,6 @@ static void gen_raise_exception(int nr) static void gen_exception(DisasContext *s, uint32_t where, int nr) { - update_cc_op(s); gen_jmp_im(s, where); gen_raise_exception(nr); } @@ -2897,6 +2896,7 @@ DISAS_INSN(branch) gen_jmp_tb(s, 0, s->pc); } else { /* Unconditional branch. */ + update_cc_op(s); gen_jmp_tb(s, 0, base + offset); } } @@ -4875,6 +4875,7 @@ static void gen_fjmpcc(DisasContext *s, int cond, TCGLabel *l1) DisasCompare c; gen_fcc_cond(&c, s, cond); + update_cc_op(s); tcg_gen_brcond_i32(c.tcond, c.v1, c.v2, l1); free_cond(&c); } |