[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] TCG: AREG0 removal planning
From: |
Blue Swirl |
Subject: |
Re: [Qemu-devel] TCG: AREG0 removal planning |
Date: |
Wed, 11 May 2011 22:15:32 +0300 |
On Wed, May 11, 2011 at 9:39 PM, Lluís <address@hidden> wrote:
> Blue Swirl writes:
>
>> On Wed, May 11, 2011 at 12:28 AM, Paul Brook <address@hidden> wrote:
>>> In practice generated code probably accesses CPUState often enough that a
>>> dedicated register isn't a bad idea. My guess is that eliminating it from C
>>> code gets us almost all of the useful benefit. Removing it from the code
>>> generator (i.e. TCG_AREG0) may be more pain that it's worth.
>
>> I don't think moving the helpers from op_helper.c to helper.c will be
>> a performance win if AREG0 is not eliminated. The code gets to use one
>> register more, but AREG0 needs to be moved to a function argument
>> register in most cases and AREG0 has to be restored. I think the
>> benefit should come from generated code getting one more available
>> register.
>
> So, it all boils down to the amount of register spilling that can be
> avoided in TCG-generated code when eliminating the reserved register for
> AREG0. Am I right?
For the generated code, yes.
Re: [Qemu-devel] TCG: AREG0 removal planning, Stefan Weil, 2011/05/10
Re: [Qemu-devel] TCG: AREG0 removal planning, Richard Henderson, 2011/05/10