aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-scalar-evolution.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2013-09-02 13:24:30 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2013-09-02 13:24:30 +0000
commit63fdb7bee70641e7d9a9704d51c8b70a62d31c24 (patch)
treef11b08d36e1a75861711146eeb11401df79a9528 /gcc/tree-scalar-evolution.c
parent78de2333eab3428f4b8723e41534f81c508bc7a6 (diff)
downloadgcc-63fdb7bee70641e7d9a9704d51c8b70a62d31c24.zip
gcc-63fdb7bee70641e7d9a9704d51c8b70a62d31c24.tar.gz
gcc-63fdb7bee70641e7d9a9704d51c8b70a62d31c24.tar.bz2
re PR tree-optimization/57511 (Missing SCEV final value replacement)
2013-09-02 Richard Biener <rguenther@suse.de> PR middle-end/57511 * tree-scalar-evolution.c (instantiate_scev_name): Allow non-linear SCEVs. * gcc.dg/tree-ssa/sccp-1.c: New testcase. From-SVN: r202168
Diffstat (limited to 'gcc/tree-scalar-evolution.c')
-rw-r--r--gcc/tree-scalar-evolution.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/tree-scalar-evolution.c b/gcc/tree-scalar-evolution.c
index c7e9d4b..bed621f 100644
--- a/gcc/tree-scalar-evolution.c
+++ b/gcc/tree-scalar-evolution.c
@@ -2252,6 +2252,7 @@ instantiate_scev_name (basic_block instantiate_below,
else if (res != chrec_dont_know)
{
if (inner_loop
+ && def_bb->loop_father != inner_loop
&& !flow_loop_nested_p (def_bb->loop_father, inner_loop))
/* ??? We could try to compute the overall effect of the loop here. */
res = chrec_dont_know;