[gcc(refs/users/marxin/heads/marxin-gcc-benchmark-branch)] testsuite/92177 fix for SLP build changes

Martin Liska marxin@gcc.gnu.org
Mon Mar 30 10:47:34 GMT 2020


https://gcc.gnu.org/g:9847df2c9573f1e4b948b5a7272c6aadf8e01c22

commit 9847df2c9573f1e4b948b5a7272c6aadf8e01c22
Author: Richard Biener <rguenther@suse.de>
Date:   Wed Feb 5 14:10:50 2020 +0100

    testsuite/92177 fix for SLP build changes
    
    We're now consistently building SLP operations with only
    scalar defs from scalars which makes the testcase no longer
    testing multiplication vectorization.  The following smuggles
    in a constant making the vector variant profitable for SLP build.
    
    2020-02-05  Richard Biener  <rguenther@suse.de>
    
            PR testsuite/92177
            * gcc.dg/vect/bb-slp-22.c: Adjust.

Diff:
---
 gcc/testsuite/ChangeLog               |  8 ++++++--
 gcc/testsuite/gcc.dg/vect/bb-slp-22.c | 16 ++++++++--------
 2 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 873a7c415ae..8ee124ba782 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,8 +1,12 @@
+2020-02-05  Richard Biener  <rguenther@suse.de>
+
+	PR testsuite/92177
+	* gcc.dg/vect/bb-slp-22.c: Adjust.
+
 2020-02-05  Richard Biener  <rguenther@suse.de>
 
 	PR middle-end/90648
-	* genmatch.c (dt_node::gen_kids_1): Emit number of argument
-	checks before matching calls.
+	* gcc.dg/pr90648.c: New testcase.
 
 2020-02-05  Jakub Jelinek  <jakub@redhat.com>
 
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-22.c b/gcc/testsuite/gcc.dg/vect/bb-slp-22.c
index 992f5898409..6dc2375f5d1 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-22.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-22.c
@@ -29,10 +29,10 @@ main1 (unsigned int x, unsigned int y)
     }
   else
     {
-      out[0] = a0 * x;
-      out[1] = a1 * y;
-      out[2] = a2 * x;
-      out[3] = a3 * y;
+      out[0] = a0 * (x + 1);
+      out[1] = a1 * (y + 1);
+      out[2] = a2 * (x + 1);
+      out[3] = a3 * (y + 1);
     }
 
   if (x)
@@ -40,10 +40,10 @@ main1 (unsigned int x, unsigned int y)
 
   /* Check results.  */
   if ((x <= y 
-       && (out[0] != (in[0] + 23) * x
-           || out[1] != (in[1] + 142) * y
-           || out[2] != (in[2] + 2) * x
-           || out[3] != (in[3] + 31) * y))
+       && (out[0] != (in[0] + 23) * (x + 1)
+           || out[1] != (in[1] + 142) * (y + 1)
+           || out[2] != (in[2] + 2) * (x + 1)
+           || out[3] != (in[3] + 31) * (y + 1)))
        || (x > y
            && (b[0] != (in[0] + 23)
                || b[1] != (in[1] + 142)


More information about the Gcc-cvs mailing list