On 01/10/2014 10:18 AM, Peter Maydell wrote:
>> > Maybe better to hoist load of
>> > tcg_rn to before initial assignment of tcg_addr?
> Not sure what you have in mind here. Pulling the
> cpu_reg_sp() call out one level like:
> 
>     if (is_postidx) {
>         int rm = extract32(insn, 16, 5);
>         TCGv_i64 tcg_rn = cpu_reg_sp(s, rn);
>         if (rm == 31) {
>             tcg_gen_mov_i64(tcg_rn, tcg_addr);
>         } else {
>             tcg_gen_add_i64(tcg_rn, tcg_rn, cpu_reg(s, rm));
>         }
>     }
> 
> seems like a good idea though.

I was thinking

  TCGv_i64 tcg_rn = cpu_reg_sp(s, rn);
  TCGv_i64 tcg_addr = tcg_temp_new_i64();
  tcg_gen_mov_i64(tcg_addr, tcg_rn);

up above.  But even as you have there is good.


r~

Reply via email to