qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH for-2.5 04/10] tcg/optimize: allow constant to h


From: Aurelien Jarno
Subject: Re: [Qemu-devel] [PATCH for-2.5 04/10] tcg/optimize: allow constant to have copies
Date: Thu, 30 Jul 2015 09:46:52 +0200
User-agent: Mutt/1.5.23 (2014-03-12)

On 2015-07-29 21:42, Alex Bennée wrote:
> 
> Aurelien Jarno <address@hidden> writes:
> 
> > On 2015-07-29 17:12, Alex Bennée wrote:
> >> 
> >> Aurelien Jarno <address@hidden> writes:
> >> 
> >> > Now that copies and constants are tracked separately, we can allow
> >> > constant to have copies, deferring the choice to use a register or a
> >> > constant to the register allocation pass. This prevent this kind of
> >> > regular constant reloading:
> >> >
> >> > -OUT: [size=338]
> >> > +OUT: [size=298]
> >> >    mov    -0x4(%r14),%ebp
> >> >    test   %ebp,%ebp
> >> >    jne    0x7ffbe9cb0ed6
> >> >    mov    $0x40002219f8,%rbp
> >> >    mov    %rbp,(%r14)
> >> > -  mov    $0x40002219f8,%rbp
> >> >    mov    $0x4000221a20,%rbx
> >> >    mov    %rbp,(%rbx)
> >> >    mov    $0x4000000000,%rbp
> >> >    mov    %rbp,(%r14)
> <snip>
> >> > --- a/tcg/optimize.c
> >> > +++ b/tcg/optimize.c
> >> > @@ -237,11 +237,6 @@ static void tcg_opt_gen_mov(TCGContext *s, TCGOp 
> >> > *op, TCGArg *args,
> >> >          return;
> >> >      }
> >> >  
> >> > -    if (temp_is_const(src)) {
> >> > -        tcg_opt_gen_movi(s, op, args, dst, temps[src].val);
> >> > -        return;
> >> > -    }
> >> > -
> >> 
> >> That looks suspicious, surely we only want to drop the move if we
> >> already have the const somewhere else?
> >
> > That's actually the while point of this patchset, to avoid converting
> > mov into moving for constant values and thus loosing the link between
> > temps.
> 
> I get that, I guess I didn't follow the previous loading of the constant
> value. Maybe showing the ops in the commit message will make it clearer.

Ok, I'll do that in v3.

-- 
Aurelien Jarno                          GPG: 4096R/1DDD8C9B
address@hidden                 http://www.aurel32.net



reply via email to

[Prev in Thread] Current Thread [Next in Thread]