diff options
author | spop <spop@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-04-21 08:48:55 +0000 |
---|---|---|
committer | spop <spop@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-04-21 08:48:55 +0000 |
commit | a89ef955863b1fcc19f862bf6c15b02650040f67 (patch) | |
tree | f3f2b4031060687272842eac011220d90325c975 /gcc/tree-scalar-evolution.c | |
parent | 0e2551653f01c4cc2cbe2bc67c2711fe73f37a02 (diff) | |
download | gcc-a89ef955863b1fcc19f862bf6c15b02650040f67.tar.gz |
PR/20742
* Makefile.in (tree-chrec.o): Depend on params.h.
* params.def (PARAM_SCEV_MAX_EXPR_SIZE): New parameter with
default value 20.
* tree-chrec.c: Depend on params.h. Replace build with buildN,
and fold build with fold_buildN.
(chrec_fold_plus_1): Fail with a chrec_don_know when the size of
the expression exceeds PARAM_SCEV_MAX_EXPR_SIZE.
(tree_contains_chrecs): Compute an estimation of the size of the
given expression.
* tree-chrec.h (tree_contains_chrecs): Modify its declaration.
(tree_does_not_contain_chrecs): Update the use of tree_contains_chrecs.
* tree-scalar-evolution.c (simple_iv): Ditto.
* doc/invoke.texi (scev-max-expr-size): Documented.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98497 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-scalar-evolution.c')
-rw-r--r-- | gcc/tree-scalar-evolution.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/tree-scalar-evolution.c b/gcc/tree-scalar-evolution.c index e7c75455005..ca808934efa 100644 --- a/gcc/tree-scalar-evolution.c +++ b/gcc/tree-scalar-evolution.c @@ -2582,7 +2582,7 @@ simple_iv (struct loop *loop, tree stmt, tree op, tree *base, tree *step) if (TREE_CODE (*step) != INTEGER_CST) return false; *base = CHREC_LEFT (ev); - if (tree_contains_chrecs (*base) + if (tree_contains_chrecs (*base, NULL) || chrec_contains_symbols_defined_in_loop (*base, loop->num)) return false; |