Commit 14dd9aab by Sebastian Pop Committed by Sebastian Pop

Fix PR47576 and PR47555: add PARAM_SCEV_MAX_EXPR_COMPLEXITY.

2011-02-02  Sebastian Pop  <sebastian.pop@amd.com>

	PR tree-optimization/47576
	PR tree-optimization/47555
	* doc/invoke.texi (scev-max-expr-complexity): Documented.
	* params.def (PARAM_SCEV_MAX_EXPR_SIZE): Bump the value to 100.
	(PARAM_SCEV_MAX_EXPR_COMPLEXITY): Declared.
	* tree-scalar-evolution.c (follow_ssa_edge): Use
	PARAM_SCEV_MAX_EXPR_COMPLEXITY.

From-SVN: r169530
parent d46efcfe
2011-02-02 Sebastian Pop <sebastian.pop@amd.com>
PR tree-optimization/47576
PR tree-optimization/47555
* doc/invoke.texi (scev-max-expr-complexity): Documented.
* params.def (PARAM_SCEV_MAX_EXPR_SIZE): Bump the value to 100.
(PARAM_SCEV_MAX_EXPR_COMPLEXITY): Declared.
* tree-scalar-evolution.c (follow_ssa_edge): Use
PARAM_SCEV_MAX_EXPR_COMPLEXITY.
2011-02-02 Richard Guenther <rguenther@suse.de> 2011-02-02 Richard Guenther <rguenther@suse.de>
PR tree-optimization/47566 PR tree-optimization/47566
......
...@@ -8463,6 +8463,10 @@ optimization when a new iv is added to the set. ...@@ -8463,6 +8463,10 @@ optimization when a new iv is added to the set.
Bound on size of expressions used in the scalar evolutions analyzer. Bound on size of expressions used in the scalar evolutions analyzer.
Large expressions slow the analyzer. Large expressions slow the analyzer.
@item scev-max-expr-complexity
Bound on the complexity of the expressions in the scalar evolutions analyzer.
Complex expressions slow the analyzer.
@item omega-max-vars @item omega-max-vars
The maximum number of variables in an Omega constraint system. The maximum number of variables in an Omega constraint system.
The default value is 128. The default value is 128.
......
...@@ -481,7 +481,12 @@ DEFPARAM(PARAM_IV_ALWAYS_PRUNE_CAND_SET_BOUND, ...@@ -481,7 +481,12 @@ DEFPARAM(PARAM_IV_ALWAYS_PRUNE_CAND_SET_BOUND,
DEFPARAM(PARAM_SCEV_MAX_EXPR_SIZE, DEFPARAM(PARAM_SCEV_MAX_EXPR_SIZE,
"scev-max-expr-size", "scev-max-expr-size",
"Bound on size of expressions used in the scalar evolutions analyzer", "Bound on size of expressions used in the scalar evolutions analyzer",
20, 0, 0) 100, 0, 0)
DEFPARAM(PARAM_SCEV_MAX_EXPR_COMPLEXITY,
"scev-max-expr-complexity",
"Bound on the complexity of the expressions in the scalar evolutions analyzer",
10, 0, 0)
DEFPARAM(PARAM_OMEGA_MAX_VARS, DEFPARAM(PARAM_OMEGA_MAX_VARS,
"omega-max-vars", "omega-max-vars",
......
...@@ -1399,7 +1399,7 @@ follow_ssa_edge (struct loop *loop, gimple def, gimple halting_phi, ...@@ -1399,7 +1399,7 @@ follow_ssa_edge (struct loop *loop, gimple def, gimple halting_phi,
return t_false; return t_false;
/* Give up if the path is longer than the MAX that we allow. */ /* Give up if the path is longer than the MAX that we allow. */
if (limit > PARAM_VALUE (PARAM_SCEV_MAX_EXPR_SIZE)) if (limit > PARAM_VALUE (PARAM_SCEV_MAX_EXPR_COMPLEXITY))
return t_dont_know; return t_dont_know;
def_loop = loop_containing_stmt (def); def_loop = loop_containing_stmt (def);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment