------- Comment #3 from o dot mangold at gmx dot de 2007-03-20 09:21 ------- Maybe I should remark, that on my system the assembler output looks I little different than yours.
Good: .L2: pushl %edi fildl (%esp) addl $4, %esp fstpl (%esp) call Square fstpl (%esi,%ebx,8) addl $1, %ebx cmpl $50000000, %ebx jne .L2 Bad: .L2: movl $0, (%esp) movl $1083129856, 4(%esp) call Square fstpl -8(%esi,%ebx,8) addl $1, %ebx cmpl $50000001, %ebx jne .L2 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31263