------- Comment #15 from dfranke at gcc dot gnu dot org 2008-07-03 18:59 ------- > Your challenge is now to produce a testcase from your source ;)
I do have a testcase that shows said flags. The difference in assembler between -foptimize-sibling-calls and -fno-optimize-sibling-calls is: --- without.s 2008-07-03 20:51:59.000000000 +0200 +++ with.s 2008-07-03 20:52:26.000000000 +0200 @@ -64,10 +64,9 @@ movq %rsp, %rdi call dummy_atom_model_inertia_tensor_ movq %rsp, %rdi - call inertia_tensor_to_rg_ addq $80, %rsp popq %rbx - ret + jmp inertia_tensor_to_rg_ .LFE2: .size dummy_atom_model_radius_of_gyration_, .-dummy_atom_model_radius_of_gyration_ .section .eh_frame,"a",@progbits Is this correct? Running the code compiled with -foptimize-sibling-calls seems to yield the correct result. Not sure if I need to investigate further. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36713