aboutsummaryrefslogtreecommitdiff
path: root/gcc/params.def
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2012-11-06 16:22:45 +0000
committerJan Hubicka <jh@suse.cz>2012-11-06 16:22:45 +0000
commit546f04984077c6af37f7baafd19eb8e90fad87f3 (patch)
treef6fbb89a772fc389ce8c8e8e32cde9cbd8d3a80a /gcc/params.def
parent301510c427557ee45ae90193455a90444613f110 (diff)
* cfgloopanal.c (get_loop_hot_path): New function.
* tree-ssa-lop-ivcanon.c (struct loop_size): Add CONSTANT_IV, NUM_NON_PURE_CALLS_ON_HOT_PATH, NUM_PURE_CALLS_ON_HOT_PATH, NUM_BRANCHES_ON_HOT_PATH. (tree_estimate_loop_size): Compute the new values. (try_unroll_loop_completely): Disable unrolling of loops with only calls or too many branches. (tree_unroll_loops_completely): Deal also with outer loops of hot loops. * cfgloop.h (get_loop_hot_path): Declare. * params.def (PARAM_MAX_PEEL_BRANCHES): New parameters. * invoke.texi (max-peel-branches): Document. * gcc.dg/tree-ssa/loop-1.c: Make to look like a good unroling candidate still. * gcc.dg/tree-ssa/loop-23.c: Likewise. * gcc.dg/tree-ssa/cunroll-1.c: Unrolling now happens early. * gcc.dg/tree-prof/unroll-1.c: Remove confused dg-options. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@193246 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/params.def')
-rw-r--r--gcc/params.def5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/params.def b/gcc/params.def
index 8733f1ba631..0ceb8a26263 100644
--- a/gcc/params.def
+++ b/gcc/params.def
@@ -291,6 +291,11 @@ DEFPARAM(PARAM_MAX_PEEL_TIMES,
"max-peel-times",
"The maximum number of peelings of a single loop",
16, 0, 0)
+/* The maximum number of peelings of a single loop that is peeled completely. */
+DEFPARAM(PARAM_MAX_PEEL_BRANCHES,
+ "max-peel-branches",
+ "The maximum number of branches on the path through the peeled sequence",
+ 32, 0, 0)
/* The maximum number of insns of a peeled loop. */
DEFPARAM(PARAM_MAX_COMPLETELY_PEELED_INSNS,
"max-completely-peeled-insns",