On Fri, Jul 6, 2012 at 11:43 AM, Yeongkyoon Lee
<yeongkyoon....@samsung.com> wrote:
> On 2012년 07월 05일 23:06, Peter Maydell wrote:
>>
>> On 5 July 2012 14:23, Yeongkyoon Lee <yeongkyoon....@samsung.com> wrote:
>>>
>>> Add an option "--enable-ldst-optimization" to enable
>>> CONFIG_QEMU_LDST_OPTIMIZATION macro for TCG qemu_ld/st optimization. It only
>>> works with CONFIG_SOFTMMU and doesn't work with CONFIG_TCG_PASS_AREG0.
>>
>> This shouldn't be a user settable config option -- we should
>> just identify what the optimal setting is for the guest/target
>> combination and use it.
>
>
> It looks better remove the option after it is confirmed that it works well
> for all the guest target architectures.
>
>
>>>   case "$target_arch2" in
>>>     alpha | sparc* | xtensa* | ppc*)
>>>       echo "CONFIG_TCG_PASS_AREG0=y" >> $config_target_mak
>>> +    # qemu_ld/st optimization is not available with
>>> CONFIG_TCG_PASS_AREG0
>>> +    target_ldst_optimization="no"
>>
>> PASS_AREG0 is the way of the future -- you need to fix the ldst
>> optimization to work with it.
>
>
> There are two reasons to prevent working with PASS_AREG0.
> The first one is I'm not sure the history and future PASS_AREG0 and have not
> tested PASS_AREG0 which is only enabled for some guest architectures..
> The second is a problem of too many conditional paths in sources.
> I think it is not late to combine the ldst optimization with PASS_AREG0
> after the ldst optimization agreed as default.

It looks like you already support PASS_AREG0, the slow path code just
passes AREG0 as the first call argument.

Reply via email to