+2000-05-09 Richard Henderson <rth@cygnus.com>
+
+ * calls.c (expand_call): Increment currently_expanding_call
+ before calling optimize_tail_recursion.
+
Tue May 9 18:54:16 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* reload1.c (reload_combine): Fix errors in last change.
This is most often true of sjlj-exceptions, which we couldn't
tail-call to anyway. */
- if (!flag_optimize_sibling_calls
+ if (currently_expanding_call++ != 0
+ || !flag_optimize_sibling_calls
|| !rtx_equal_function_value_matters
- || currently_expanding_call
|| !stmt_loop_nest_empty ()
|| any_pending_cleanups (1)
|| args_size.var)
stack_pointer_delta = save_stack_pointer_delta;
}
- currently_expanding_call++;
-
if (profile_arc_flag && (flags & ECF_FORK_OR_EXEC))
{
/* A fork duplicates the profile information, and an exec discards