Return unknow from scev instantiation if the result is not above instantiate_below.

2009-07-30  Sebastian Pop  <sebastian.pop@amd.com>

	* tree-scalar-evolution.c: Fix comment.
	(instantiate_scev_1): Return unknow from scev instantiation if the
	result is not above instantiate_below.

From-SVN: r150290
This commit is contained in:
Sebastian Pop 2009-07-31 02:30:03 +00:00 committed by Sebastian Pop
parent 42e6eec568
commit 52bdd655b0
2 changed files with 13 additions and 7 deletions

View File

@ -1,3 +1,9 @@
2009-07-30 Sebastian Pop <sebastian.pop@amd.com>
* tree-scalar-evolution.c: Fix comment.
(instantiate_scev_1): Return unknow from scev instantiation if the
result is not above instantiate_below.
2009-07-30 Sebastian Pop <sebastian.pop@amd.com>
* tree-scalar-evolution.c (compute_overall_effect_of_inner_loop): Not

View File

@ -1893,18 +1893,16 @@ analyze_scalar_evolution_1 (struct loop *loop, tree var, tree res)
return res;
}
/* Entry point for the scalar evolution analyzer.
Analyzes and returns the scalar evolution of the ssa_name VAR.
LOOP_NB is the identifier number of the loop in which the variable
is used.
/* Analyzes and returns the scalar evolution of the ssa_name VAR in
LOOP. LOOP is the loop in which the variable is used.
Example of use: having a pointer VAR to a SSA_NAME node, STMT a
pointer to the statement that uses this variable, in order to
determine the evolution function of the variable, use the following
calls:
unsigned loop_nb = loop_containing_stmt (stmt)->num;
tree chrec_with_symbols = analyze_scalar_evolution (loop_nb, var);
loop_p loop = loop_containing_stmt (stmt);
tree chrec_with_symbols = analyze_scalar_evolution (loop, var);
tree chrec_instantiated = instantiate_parameters (loop, chrec_with_symbols);
*/
@ -2177,7 +2175,9 @@ instantiate_scev_1 (basic_block instantiate_below,
else
res = chrec;
if (res == NULL_TREE)
if (res == NULL_TREE
|| !dominated_by_p (CDI_DOMINATORS, instantiate_below,
gimple_bb (SSA_NAME_DEF_STMT (res))))
res = chrec_dont_know;
}