mirror of https://gitee.com/openkylin/qemu.git
target/cris: Use tcg_gen_abs_tl
Reviewed-by: David Hildenbrand <david@redhat.com> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
parent
4e027a7106
commit
73f671f1a2
|
@ -1686,18 +1686,11 @@ static int dec_cmp_r(CPUCRISState *env, DisasContext *dc)
|
|||
|
||||
static int dec_abs_r(CPUCRISState *env, DisasContext *dc)
|
||||
{
|
||||
TCGv t0;
|
||||
|
||||
LOG_DIS("abs $r%u, $r%u\n",
|
||||
dc->op1, dc->op2);
|
||||
cris_cc_mask(dc, CC_MASK_NZ);
|
||||
|
||||
t0 = tcg_temp_new();
|
||||
tcg_gen_sari_tl(t0, cpu_R[dc->op1], 31);
|
||||
tcg_gen_xor_tl(cpu_R[dc->op2], cpu_R[dc->op1], t0);
|
||||
tcg_gen_sub_tl(cpu_R[dc->op2], cpu_R[dc->op2], t0);
|
||||
tcg_temp_free(t0);
|
||||
|
||||
tcg_gen_abs_tl(cpu_R[dc->op2], cpu_R[dc->op1]);
|
||||
cris_alu(dc, CC_OP_MOVE,
|
||||
cpu_R[dc->op2], cpu_R[dc->op2], cpu_R[dc->op2], 4);
|
||||
return 2;
|
||||
|
|
Loading…
Reference in New Issue