http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49781
--- Comment #12 from Uros Bizjak <ubizjak at gmail dot com> 2011-08-03 16:08:47 UTC --- (In reply to comment #11) > gcc.dg/torture/pr47744-2.c compiled with > > -mx32 -O3 -std=gnu99 -ftree-vectorize -funroll-loops > > generates codes like > > leal (%rax,%r9), %r12d > leal (%rax,%rdi), %r10d > mov %r12d, %edx > movq (%r12d), %rbp > movq 8(%rdx), %rdx > movq (%r12d), %rax > > Many leal aren't necessary. This is the tradeof for using offsetable address for DWI operands.