------- Comment #5 from hubicka at gcc dot gnu dot org 2005-12-18 20:53 ------- Simplified testcase seems to work for me on 4.1 branch: restore_fpu: movl 4(%esp), %edx movl boot_cpu_data+12, %eax testl $16777216, %eax je .L2 jmp foo .L2: movl %edx, 4(%esp) jmp bar "jmp foo" is not elliminated because we don't have pattern for conditional tailcalls. Should not be big issue to add the neccesary patterns however.
Honza -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24810