------- Comment #1 from pinskia at gcc dot gnu dot org 2008-12-31 18:33 ------- The inner loop on the trunk looks like: .L15: movl 848(%esp,%eax,4), %edx .L4: movl 448(%esp,%eax,4), %ecx xorl %ebx, %ebx addl %ecx, %esi adcl %ebx, %edi xorl %ecx, %ecx addl %edx, %esi adcl %ecx, %edi movl %esi, 48(%esp,%eax,4) incl %eax movl %edi, %esi xorl %edi, %edi cmpl $100, %eax jne .L15
Which is a lot better. This was improved by the new register allocator on the trunk. Going back to the old one on the trunk, gives what 4.3 gave. -- pinskia at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |missed-optimization, ra http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33717