target-m68k: fix muluw/mulsw
"The multiplier and multiplicand are both word operands, and the result is a long-word operand." So compute flags on a long-word result, not on a word result. Signed-off-by: Laurent Vivier <laurent@vivier.eu> Reviewed-by: Richard Henderson <rth@twiddle.net>
This commit is contained in:
parent
5436c29d78
commit
4a18cd44f3
@ -1186,7 +1186,7 @@ DISAS_INSN(mulw)
|
|||||||
SRC_EA(env, src, OS_WORD, sign, NULL);
|
SRC_EA(env, src, OS_WORD, sign, NULL);
|
||||||
tcg_gen_mul_i32(tmp, tmp, src);
|
tcg_gen_mul_i32(tmp, tmp, src);
|
||||||
tcg_gen_mov_i32(reg, tmp);
|
tcg_gen_mov_i32(reg, tmp);
|
||||||
gen_logic_cc(s, tmp, OS_WORD);
|
gen_logic_cc(s, tmp, OS_LONG);
|
||||||
}
|
}
|
||||||
|
|
||||||
DISAS_INSN(divw)
|
DISAS_INSN(divw)
|
||||||
|
Loading…
Reference in New Issue
Block a user