aboutsummaryrefslogtreecommitdiff
path: root/gcc/graphite.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2018-01-11 13:42:29 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2018-01-11 13:42:29 +0000
commitb0bd3e52c1b5b59bd416298ae0794342ec319d86 (patch)
treeb6b57883c1591658b34b98aae4e2bb2aaa9362d2 /gcc/graphite.c
parentdc6401818b1509cf7617879b9c00bba5daba5c66 (diff)
downloadgcc-b0bd3e52c1b5b59bd416298ae0794342ec319d86.zip
gcc-b0bd3e52c1b5b59bd416298ae0794342ec319d86.tar.gz
gcc-b0bd3e52c1b5b59bd416298ae0794342ec319d86.tar.bz2
re PR tree-optimization/83435 (ICE in set_value_range, at tree-vrp.c:211)
2018-01-11 Richard Biener <rguenther@suse.de> PR tree-optimization/83435 * graphite.c (canonicalize_loop_form): Ignore fake loop exit edges. * graphite-scop-detection.c (scop_detection::get_sese): Likewise. * tree-vrp.c (add_assert_info): Drop TREE_OVERFLOW if they appear. * gcc.dg/graphite/pr83435.c: New testcase. From-SVN: r256535
Diffstat (limited to 'gcc/graphite.c')
-rw-r--r--gcc/graphite.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/graphite.c b/gcc/graphite.c
index 3b7f46b..bcf4828 100644
--- a/gcc/graphite.c
+++ b/gcc/graphite.c
@@ -324,7 +324,7 @@ canonicalize_loop_form (void)
FOR_EACH_LOOP (loop, LI_FROM_INNERMOST)
{
edge e = single_exit (loop);
- if (!e || (e->flags & EDGE_COMPLEX))
+ if (!e || (e->flags & (EDGE_COMPLEX|EDGE_FAKE)))
continue;
canonicalize_loop_closed_ssa (loop, e);