------- Comment #5 from chrbr at gcc dot gnu dot org 2007-10-09 13:12 ------- you are right, it's not a sibcall, my mistake. But even at the tree level I still don't see the builtin marked as tailcall. On a reduced case when entering find_tail_calls I have
D.1177_2 = __builtin_cos (phi_1(D)); D.1176_3 = COMPLEX_EXPR <D.1177_2, 0.0>; return D.1176_3; and this is not recognized as a tailcall a candidate because the GIMPLE_MODIFY_STMT operand 1 is a complex_expr, not a call. note that in the absence of complex_expr, such as a builtin_memset. all is fine -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32684