This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: PATCH for sibcalls on i386
On Mon, Sep 30, 2002 at 05:07:58PM -0400, John David Anglin wrote:
> I've been looking and I don't have a full explanation yet. I see in
> expand call that try_tail_call is 0 and try_tail_recursion is 1. It
> looks like try_tail_call == 1 is necessary for sibcall generation
> (see line 2623 in calls.c). try_tail_call is 0 because
> FUNCTION_OK_FOR_SIBCALL always is 0 for TARGET_64BIT. What I don't
> understand is why we get a sibcall on hppa-linux which defines
> FUNCTION_OK_FOR_SIBCALL to be 0.
Do you get a sibcall? try_tail_recursion does not rely on
the sibcall machinery, and is independent of it. It should
not be shut off by FUNCTION_OK_FOR_SIBCALL.
r~