diff options
-rw-r--r-- | target/hppa/translate.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/target/hppa/translate.c b/target/hppa/translate.c index 62cc3c3..b19d7c6 100644 --- a/target/hppa/translate.c +++ b/target/hppa/translate.c @@ -1006,9 +1006,8 @@ static DisasCond do_unit_zero_cond(unsigned cf, bool d, TCGv_i64 res) tmp = tcg_temp_new_i64(); tcg_gen_subi_i64(tmp, res, ones); tcg_gen_andc_i64(tmp, tmp, res); - tcg_gen_andi_i64(tmp, tmp, sgns); - return cond_make_ti(cf & 1 ? TCG_COND_EQ : TCG_COND_NE, tmp, 0); + return cond_make_ti(cf & 1 ? TCG_COND_TSTEQ : TCG_COND_TSTNE, tmp, sgns); } static TCGv_i64 get_carry(DisasContext *ctx, bool d, |