Commit 43d7ac4e74e7b368ab0cc5beb45a0360ef56271c
1 parent
c5631f48
CRIS: Avoid cpu_T[1] for move_r.
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5548 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
7 additions
and
3 deletions
target-cris/translate.c
... | ... | @@ -1330,7 +1330,7 @@ static inline void do_postinc (DisasContext *dc, int size) |
1330 | 1330 | } |
1331 | 1331 | |
1332 | 1332 | static inline void dec_prep_move_r(DisasContext *dc, int rs, int rd, |
1333 | - int size, int s_ext, TCGv dst) | |
1333 | + int size, int s_ext, TCGv dst) | |
1334 | 1334 | { |
1335 | 1335 | if (s_ext) |
1336 | 1336 | t_gen_sext(dst, cpu_R[rs], size); |
... | ... | @@ -1603,10 +1603,14 @@ static unsigned int dec_move_r(DisasContext *dc) |
1603 | 1603 | cris_update_result(dc, cpu_R[dc->op2]); |
1604 | 1604 | } |
1605 | 1605 | else { |
1606 | - dec_prep_move_r(dc, dc->op1, dc->op2, size, 0, cpu_T[1]); | |
1606 | + TCGv t0; | |
1607 | + | |
1608 | + t0 = tcg_temp_new(TCG_TYPE_TL); | |
1609 | + dec_prep_move_r(dc, dc->op1, dc->op2, size, 0, t0); | |
1607 | 1610 | cris_alu(dc, CC_OP_MOVE, |
1608 | 1611 | cpu_R[dc->op2], |
1609 | - cpu_R[dc->op2], cpu_T[1], size); | |
1612 | + cpu_R[dc->op2], t0, size); | |
1613 | + tcg_temp_free(t0); | |
1610 | 1614 | } |
1611 | 1615 | return 2; |
1612 | 1616 | } | ... | ... |