aboutsummaryrefslogtreecommitdiff
path: root/gcc/calls.c
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2000-03-29 09:54:31 +0000
committerJan Hubicka <hubicka@gcc.gnu.org>2000-03-29 09:54:31 +0000
commitdb8cb48e64684efc2956b1229e9b1fbac558229a (patch)
tree6115adcb32b8d779e6fc736f4b16ea206907a22e /gcc/calls.c
parent402eec872f73eebdbfb05cf4bbb133ed9af3460a (diff)
downloadgcc-db8cb48e64684efc2956b1229e9b1fbac558229a.zip
gcc-db8cb48e64684efc2956b1229e9b1fbac558229a.tar.gz
gcc-db8cb48e64684efc2956b1229e9b1fbac558229a.tar.bz2
flags.h (flag_optimize_sibling_calls): Declare.
* flags.h (flag_optimize_sibling_calls): Declare. * calls.c (expand_call): Fail sibcall when !flag_optimize_sibling_calls * invoke.texi (flag_optimize_sibling_calls): Document. * toplev.c (flag_optimize_sibling_calls): New global variable. (f_options): Add flag_optimize_sibling_calls. (rest_of_compilation): Conditionize optimize_sibling_and_tail_recursive_calls by flag_optimize_sibling_calls. (main): Set flag_optimize_sibling_calls for -O2. * stmt.c (expand_return): Conditionize tail recursion by flag_optimize_sibling_calls. From-SVN: r32802
Diffstat (limited to 'gcc/calls.c')
-rw-r--r--gcc/calls.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/calls.c b/gcc/calls.c
index 07898c3..a978dd4 100644
--- a/gcc/calls.c
+++ b/gcc/calls.c
@@ -2034,7 +2034,7 @@ expand_call (exp, target, ignore)
the call. */
try_tail_call = 0;
- if (optimize >= 2
+ if (flag_optimize_sibling_calls
&& currently_expanding_call == 1
&& stmt_loop_nest_empty ()
&& ! any_pending_cleanups (1))