target/xtensa: Use tcg_gen_abs_i32
Acked-by: Max Filippov <jcmvbkbc@gmail.com> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
parent
2f8036d236
commit
e1c4786541
|
@ -1709,14 +1709,7 @@ void restore_state_to_opc(CPUXtensaState *env, TranslationBlock *tb,
|
||||||
static void translate_abs(DisasContext *dc, const OpcodeArg arg[],
|
static void translate_abs(DisasContext *dc, const OpcodeArg arg[],
|
||||||
const uint32_t par[])
|
const uint32_t par[])
|
||||||
{
|
{
|
||||||
TCGv_i32 zero = tcg_const_i32(0);
|
tcg_gen_abs_i32(arg[0].out, arg[1].in);
|
||||||
TCGv_i32 neg = tcg_temp_new_i32();
|
|
||||||
|
|
||||||
tcg_gen_neg_i32(neg, arg[1].in);
|
|
||||||
tcg_gen_movcond_i32(TCG_COND_GE, arg[0].out,
|
|
||||||
arg[1].in, zero, arg[1].in, neg);
|
|
||||||
tcg_temp_free(neg);
|
|
||||||
tcg_temp_free(zero);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void translate_add(DisasContext *dc, const OpcodeArg arg[],
|
static void translate_add(DisasContext *dc, const OpcodeArg arg[],
|
||||||
|
|
Loading…
Reference in a new issue