summaryrefslogtreecommitdiff
path: root/gcc/tree-chrec.c
diff options
context:
space:
mode:
authorZdenek Dvorak <dvorakz@suse.cz>2007-05-10 23:33:11 +0200
committerZdenek Dvorak <rakdver@gcc.gnu.org>2007-05-10 21:33:11 +0000
commite71d7f88ba619aab4d53468d4f26e97a670842dd (patch)
tree5bd5f7053c0c0609d3643ee5d62d5626410a8069 /gcc/tree-chrec.c
parent5635c26e579161430860f8f85941949ccf586f1d (diff)
downloadgcc-e71d7f88ba619aab4d53468d4f26e97a670842dd.tar.gz
re PR tree-optimization/31885 (Not removing empty loop, scev not finding the correct result)
PR tree-optimization/31885 * tree-chrec.c (chrec_contains_undetermined): Do not consider NULL_TREE to be undetermined. (automatically_generated_chrec_p): Return false for NULL. * gcc.dg/tree-ssa/loop-29.c: New test. From-SVN: r124602
Diffstat (limited to 'gcc/tree-chrec.c')
-rw-r--r--gcc/tree-chrec.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/gcc/tree-chrec.c b/gcc/tree-chrec.c
index 119a35b97c2..7abd5ad519f 100644
--- a/gcc/tree-chrec.c
+++ b/gcc/tree-chrec.c
@@ -888,11 +888,12 @@ chrec_contains_undetermined (tree chrec)
{
int i, n;
- if (chrec == chrec_dont_know
- || chrec == chrec_not_analyzed_yet
- || chrec == NULL_TREE)
+ if (chrec == chrec_dont_know)
return true;
+ if (chrec == NULL_TREE)
+ return false;
+
n = TREE_OPERAND_LENGTH (chrec);
for (i = 0; i < n; i++)
if (chrec_contains_undetermined (TREE_OPERAND (chrec, i)))