summaryrefslogtreecommitdiff
path: root/gcc/params.def
diff options
context:
space:
mode:
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2009-05-15 17:11:00 +0000
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2009-05-15 17:11:00 +0000
commita7b61d8cf74caca09cd58095e8904e5a038a84b9 (patch)
tree2497e05beec85606936132146b62b04ea933c0e2 /gcc/params.def
parent22c748a157664e9f46a199330b0f0639b841c98e (diff)
downloadgcc-a7b61d8cf74caca09cd58095e8904e5a038a84b9.tar.gz
* doc/invoke.texi (max-early-inliner-iterations): New flag.
* ipa-inline.c (enum inlining_mode): New INLINE_SIZE_NORECURSIVE. (try_inline): Fix return value. (cgraph_decide_inlining_incrementally): Honor new value. (cgraph_early_inlining): Handle indirect inlining. * params.def (PARAM_EARLY_INLINER_MAX_ITERATIONS): New. * testsuite/gcc.dg/tree-ssa/inline-3.c: New testcase git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147587 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/params.def')
-rw-r--r--gcc/params.def8
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/params.def b/gcc/params.def
index 684de5ed3ca..9b5db87d7eb 100644
--- a/gcc/params.def
+++ b/gcc/params.def
@@ -139,6 +139,14 @@ DEFPARAM (PARAM_MIN_INLINE_RECURSIVE_PROBABILITY,
"Inline recursively only when the probability of call being executed exceeds the parameter",
10, 0, 0)
+/* Limit of iterations of early inliner. This basically bounds number of
+ nested indirect calls early inliner can resolve. Deeper chains are still
+ handled by late inlining. */
+DEFPARAM (PARAM_EARLY_INLINER_MAX_ITERATIONS,
+ "max-early-inliner-iterations",
+ "The maximum number of nested indirect inlining performed by early inliner",
+ 10, 0, 0)
+
/* Limit the number of expansions created by the variable expansion
optimization to avoid register pressure. */
DEFPARAM (PARAM_MAX_VARIABLE_EXPANSIONS,