[PATCH] Fix half of PR92596
Richard Biener
rguenther@suse.de
Thu Nov 21 15:13:00 GMT 2019
I managed to somehow commit sth bogus on trunk (the branch is correct).
Bootstrapped / tested on x86_64-unknown-linux-gnu, applied.
Richard.
2019-11-21 Richard Biener <rguenther@suse.de>
PR tree-optimization/92596
* tree-vect-slp.c (vect_build_slp_tree): Fix pasto.
* gcc.dg/torture/pr92596-1.c: New testcase.
Index: gcc/tree-vect-slp.c
===================================================================
--- gcc/tree-vect-slp.c (revision 278550)
+++ gcc/tree-vect-slp.c (working copy)
@@ -1247,7 +1248,8 @@ vect_build_slp_tree (vec_info *vinfo,
return *leader;
}
poly_uint64 this_max_nunits = 1;
- slp_tree res = vect_build_slp_tree_2 (vinfo, stmts, group_size, max_nunits,
+ slp_tree res = vect_build_slp_tree_2 (vinfo, stmts, group_size,
+ &this_max_nunits,
matches, npermutes, tree_size, bst_map);
if (res)
{
Index: gcc/testsuite/gcc.dg/torture/pr92596-1.c
===================================================================
--- gcc/testsuite/gcc.dg/torture/pr92596-1.c (nonexistent)
+++ gcc/testsuite/gcc.dg/torture/pr92596-1.c (working copy)
@@ -0,0 +1,20 @@
+/* { dg-do compile } */
+/* { dg-additional-options "-ftree-slp-vectorize" } */
+
+typedef struct {
+ long n[5];
+} secp256k1_fe;
+
+void *a, *b;
+int c;
+static void
+fn1(secp256k1_fe *p1, int p2)
+{
+ p1->n[2] = p1->n[3] = p1->n[4] = p2;
+}
+void
+fn2()
+{
+ fn1(b, !c);
+ fn1(a, !c);
+}
More information about the Gcc-patches
mailing list