aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2019-10-14 11:47:15 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2019-10-14 11:47:15 +0000
commit7bd8bec53f0e43c7a7852c54650746e65324514b (patch)
tree1ddb5ca789a594ffed1ca723b008a0e0fea80450 /gcc
parent312f3fa49dd446fc42b3783102a7f956aa0856e7 (diff)
downloadgcc-7bd8bec53f0e43c7a7852c54650746e65324514b.zip
gcc-7bd8bec53f0e43c7a7852c54650746e65324514b.tar.gz
gcc-7bd8bec53f0e43c7a7852c54650746e65324514b.tar.bz2
re PR tree-optimization/92069 (ice in vect_analyze_scalar_cycles_1, at tree-vect-loop.c:560)
2019-10-14 Richard Biener <rguenther@suse.de> PR tree-optimization/92069 * tree-vect-loop.c (vect_analyze_scalar_cycles_1): For nested cycles do not set vect_nested_cycle on the latch definition. * gcc.dg/torture/pr92069.c: New testcase. From-SVN: r276959
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gcc.dg/torture/pr92069.c19
-rw-r--r--gcc/tree-vect-loop.c1
4 files changed, 30 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e755803..c2cbd42 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2019-10-14 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/92069
+ * tree-vect-loop.c (vect_analyze_scalar_cycles_1): For nested
+ cycles do not set vect_nested_cycle on the latch definition.
+
2019-10-14 Richard Sandiford <richard.sandiford@arm.com>
* function-abi.h (expr_callee_abi): Declare.
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 13988f8..281da7f 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2019-10-14 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/92069
+ * gcc.dg/torture/pr92069.c: New testcase.
+
2019-10-14 Paolo Carlini <paolo.carlini@oracle.com>
* g++.dg/cpp0x/constexpr-union5.C: Test location(s) too.
diff --git a/gcc/testsuite/gcc.dg/torture/pr92069.c b/gcc/testsuite/gcc.dg/torture/pr92069.c
new file mode 100644
index 0000000..806ff5f
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/torture/pr92069.c
@@ -0,0 +1,19 @@
+/* { dg-do compile } */
+/* { dg-additional-options "-ftree-vectorize" } */
+
+unsigned int a, c, d;
+double b;
+void e()
+{
+ for (; d; d++)
+ {
+ double f;
+ a = 2;
+ for (; a; a++)
+ {
+ c = b;
+ b = f;
+ f = c;
+ }
+ }
+}
diff --git a/gcc/tree-vect-loop.c b/gcc/tree-vect-loop.c
index cb95ea3..de018ac 100644
--- a/gcc/tree-vect-loop.c
+++ b/gcc/tree-vect-loop.c
@@ -584,7 +584,6 @@ vect_analyze_scalar_cycles_1 (loop_vec_info loop_vinfo, class loop *loop)
"Detected vectorizable nested cycle.\n");
STMT_VINFO_DEF_TYPE (stmt_vinfo) = vect_nested_cycle;
- STMT_VINFO_DEF_TYPE (reduc_stmt_info) = vect_nested_cycle;
}
else
{