On Fri, Jan 17, 2014 at 04:24:50PM +0100, Uros Bizjak wrote:
> On Fri, Jan 17, 2014 at 3:50 PM, H.J. Lu <[email protected]> wrote:
> >
> > Wrong example. It should be
> >
> > lea 0x400(%edx, %ecx, 8), %edx
> >
> > we get
> >
> > add %ecx, %edx
> > add %ecx, %edx
> > add %ecx, %edx
> > add %ecx, %edx
> > add %ecx, %edx
> > add %ecx, %edx
> > add %ecx, %edx
> > add %ecx, %edx
> > add $0x400, %edx
>
> Even for this example, the code can be substantially improved:
>
> shl $3, %ecx
> add %ecx, %edx
> add $0x400, %edx
Only if ecx is dead after the statement.
Jakub