------- Comment #1 from pinskia at gcc dot gnu dot org 2006-09-05 21:08 ------- -funswitch-loops fixes the loops. For the first function, we get: .L4: movl %ebx, (%esp) call *%esi jmp .L4
and: .L3: movl (%ebx), %eax movl %ebx, (%esp) call *-1(%eax,%edi) .p2align 4,,4 jmp .L3 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28957