diff --git a/target/openrisc/translate.c b/target/openrisc/translate.c index 7a6af183ae..c9856fdc88 100644 --- a/target/openrisc/translate.c +++ b/target/openrisc/translate.c @@ -220,8 +220,7 @@ static void gen_addc(DisasContext *dc, TCGv dest, TCGv srca, TCGv srcb) TCGv t0 = tcg_temp_new(); TCGv res = tcg_temp_new(); - tcg_gen_add2_tl(res, cpu_sr_cy, srca, dc->zero, cpu_sr_cy, dc->zero); - tcg_gen_add2_tl(res, cpu_sr_cy, res, cpu_sr_cy, srcb, dc->zero); + tcg_gen_addcio_tl(res, cpu_sr_cy, srca, srcb, cpu_sr_cy); tcg_gen_xor_tl(cpu_sr_ov, srca, srcb); tcg_gen_xor_tl(t0, res, srcb); tcg_gen_andc_tl(cpu_sr_ov, t0, cpu_sr_ov);
Signed-off-by: Richard Henderson <richard.henderson@linaro.org> --- target/openrisc/translate.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)