[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 12/12] target-arm: A64: add support for compa
From: |
Peter Maydell |
Subject: |
Re: [Qemu-devel] [PATCH v2 12/12] target-arm: A64: add support for compare and branch imm |
Date: |
Wed, 4 Dec 2013 22:19:18 +0000 |
On 4 December 2013 21:59, Richard Henderson <address@hidden> wrote:
> On 12/05/2013 08:33 AM, Peter Maydell wrote:
>> +static TCGv_i64 read_cpu_reg(DisasContext *s, int reg, int sf)
>> +{
>> + TCGv_i64 v = new_tmp_a64_zero(s);
>> + if (reg != 31) {
>
> This is going to issue a garbage "movi tmp, 0" opcode for every non-XZR read.
> While the optimizer will remove that, it's only going to slow things down, and
> easily avoidable.
>
> Better to allocate the temporary and only perform the movi for reg == 31.
Yeah, I guess we should have a new_tmp_a64() that gives you an
uninitialized auto-freeing tmp, and then have new_tmp_a64_zero()
do { v = new_tmp_a64(); tcg_gen_movi_i64(v, 0); return v; }
(or not have the _zero variant at all, depending on whether it's
particularly useful.)
thanks
-- PMM
- Re: [Qemu-devel] [PATCH v2 08/12] target-arm: A64: add support for B and BL insns, (continued)
- [Qemu-devel] [PATCH v2 10/12] target-arm: A64: add support for conditional branches, Peter Maydell, 2013/12/04
- [Qemu-devel] [PATCH v2 11/12] target-arm: A64: add support for 'test and branch' imm, Peter Maydell, 2013/12/04
- [Qemu-devel] [PATCH v2 02/12] target-arm: A64: add set_pc cpu method, Peter Maydell, 2013/12/04
- [Qemu-devel] [PATCH v2 06/12] target-arm: A64: provide skeleton for a64 insn decoding, Peter Maydell, 2013/12/04
- [Qemu-devel] [PATCH v2 04/12] target-arm: Support fp registers in gdb stub, Peter Maydell, 2013/12/04
- [Qemu-devel] [PATCH v2 12/12] target-arm: A64: add support for compare and branch imm, Peter Maydell, 2013/12/04
- [Qemu-devel] [PATCH v2 01/12] target-arm: Split A64 from A32/T32 gen_intermediate_code_internal(), Peter Maydell, 2013/12/04
- [Qemu-devel] [PATCH v2 03/12] target-arm: A64: provide functions for accessing FPCR and FPSR, Peter Maydell, 2013/12/04
- [Qemu-devel] [PATCH v2 05/12] target-arm: A64: add stubs for a64 specific helpers, Peter Maydell, 2013/12/04