re PR tree-optimization/82672 ([GRAPHITE] ICE in verify_gimple_in_cfg)
authorRichard Biener <rguenther@suse.de>
Mon, 23 Oct 2017 13:49:24 +0000 (13:49 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Mon, 23 Oct 2017 13:49:24 +0000 (13:49 +0000)
2017-10-23  Richard Biener  <rguenther@suse.de>

PR tree-optimization/82672
* graphite-isl-ast-to-gimple.c (graphite_copy_stmts_from_block):
Fold the stmt if we propagated into it.

* gfortran.dg/graphite/pr82672.f90: New testcase.

From-SVN: r254009

gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/graphite/pr82672.f90 [new file with mode: 0644]

index a4d8cff..d0b7223 100644 (file)
@@ -1,5 +1,11 @@
 2017-10-23  Richard Biener  <rguenther@suse.de>
 
+       PR tree-optimization/82672
+       * graphite-isl-ast-to-gimple.c (graphite_copy_stmts_from_block):
+       Fold the stmt if we propagated into it.
+
+2017-10-23  Richard Biener  <rguenther@suse.de>
+
        * tree-ssa-pre.c (bitmap_remove_from_set): Rename to...
        (bitmap_remove_expr_from_set): ... this.  All callers call this
        for non-constant values.
index 2af517e..75475d7 100644 (file)
@@ -1,3 +1,8 @@
+2017-10-23  Richard Biener  <rguenther@suse.de>
+
+       PR tree-optimization/82672
+       * gfortran.dg/graphite/pr82672.f90: New testcase.
+
 2017-10-23  Paolo Carlini  <paolo.carlini@oracle.com>
 
        PR c++/77555
diff --git a/gcc/testsuite/gfortran.dg/graphite/pr82672.f90 b/gcc/testsuite/gfortran.dg/graphite/pr82672.f90
new file mode 100644 (file)
index 0000000..77a1c70
--- /dev/null
@@ -0,0 +1,33 @@
+! { dg-do compile }
+! { dg-options "-O2 -floop-nest-optimize" }
+
+  character(len=20,kind=4) :: s4
+  character(len=20,kind=1) :: s1
+
+  s1 = "foo\u0000"
+  s1 = "foo\u00ff"
+  s1 = "foo\u0100"
+  s1 = "foo\u0101"
+  s1 = "foo\U00000101"
+
+  s1 = 4_"foo bar"
+  s1 = 4_"foo\u00ff"
+  s1 = 4_"foo\u0101"
+  s1 = 4_"foo\u1101"
+  s1 = 4_"foo\UFFFFFFFF"
+
+  s4 = "foo\u0000"
+  s4 = "foo\u00ff"
+  s4 = "foo\u0100"
+  s4 = "foo\U00000100"
+
+  s4 = 4_"foo bar"
+  s4 = 4_"\xFF\x96"
+  s4 = 4_"\x00\x96"
+  s4 = 4_"foo\u00ff"
+  s4 = 4_"foo\u0101"
+  s4 = 4_"foo\u1101"
+  s4 = 4_"foo\Uab98EF56"
+  s4 = 4_"foo\UFFFFFFFF"
+
+end