https://gcc.gnu.org/g:9c48cbb259851873397abc632422f3f44f253db0

commit r16-2603-g9c48cbb259851873397abc632422f3f44f253db0
Author: Richard Biener <rguent...@suse.de>
Date:   Tue Jul 29 14:01:46 2025 +0200

    Another testcase for PR120687
    
    This shows reassoc is harmful even with len == 3.
    
            PR tree-optimization/120687
            * gcc.dg/vect/pr120687-3.c: New testcase.

Diff:
---
 gcc/testsuite/gcc.dg/vect/pr120687-3.c | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/gcc/testsuite/gcc.dg/vect/pr120687-3.c 
b/gcc/testsuite/gcc.dg/vect/pr120687-3.c
new file mode 100644
index 000000000000..f20a66a62230
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/vect/pr120687-3.c
@@ -0,0 +1,16 @@
+/* { dg-do compile } */
+/* { dg-require-effective-target vect_double } */
+/* { dg-additional-options "-ffast-math" } */
+
+float
+frd (float *p, float *lastone)
+{
+  float sum = 0;
+  for (; p <= lastone; p += 2)
+    sum += p[0] + p[1];
+  return sum;
+}
+
+/* { dg-final { scan-tree-dump "reduction: detected reduction chain" "vect" } 
} */
+/* { dg-final { scan-tree-dump-not "SLP discovery of reduction chain failed" 
"vect" } } */
+/* { dg-final { scan-tree-dump "optimized: loop vectorized" "vect" } } */

Reply via email to