aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2022-04-04 08:41:59 +0200
committerRichard Biener <rguenther@suse.de>2022-04-06 08:14:23 +0200
commite2a818641ba5d07ebe2c241906896c4886910d18 (patch)
tree4fdb95fa7c4f44b89b13ea73426944b534871320
parent83b43c74bbbdc6b6903350b220b932c6f774bdfd (diff)
downloadgcc-e2a818641ba5d07ebe2c241906896c4886910d18.zip
gcc-e2a818641ba5d07ebe2c241906896c4886910d18.tar.gz
gcc-e2a818641ba5d07ebe2c241906896c4886910d18.tar.bz2
testsuite/105122 - adjust testcases after memcpy folding changes
After r12-7931 we again honor MOVE_MAX when folding memcpy to a load/store pair. On i?86-*-* without SSE this now exposes the change done in r12-2666-g29f0e955c97da0 which adjusts MOVE_MAX from 16 to 4 on those targets. This makes adjusting testcases necessary that assume that we transform memcpy to load/store pairs on GIMPLE for sizes larger or equal to 8. 2022-04-04 Richard Biener <rguenther@suse.de> PR testsuite/105122 * gcc.dg/memcpy-6.c: Adjust. * gcc.dg/strlenopt-73.c: Likewise. * gcc.dg/strlenopt-80.c: Likewise.
-rw-r--r--gcc/testsuite/gcc.dg/memcpy-6.c3
-rw-r--r--gcc/testsuite/gcc.dg/strlenopt-73.c2
-rw-r--r--gcc/testsuite/gcc.dg/strlenopt-80.c3
3 files changed, 5 insertions, 3 deletions
diff --git a/gcc/testsuite/gcc.dg/memcpy-6.c b/gcc/testsuite/gcc.dg/memcpy-6.c
index 7ff735e..d4df039 100644
--- a/gcc/testsuite/gcc.dg/memcpy-6.c
+++ b/gcc/testsuite/gcc.dg/memcpy-6.c
@@ -6,7 +6,8 @@
of targets where it's known to pass (see PR testsuite/83483).
{ dg-do compile }
{ dg-options "-O0 -Wrestrict -fdump-tree-optimized" }
- { dg-skip-if "skip non-x86 targets" { ! { i?86-*-* x86_64-*-* } } } */
+ { dg-skip-if "skip non-x86 targets" { ! { i?86-*-* x86_64-*-* } } }
+ { dg-additional-options "-msse" { target i?86-*-* x86_64-*-* } } */
char a[32];
diff --git a/gcc/testsuite/gcc.dg/strlenopt-73.c b/gcc/testsuite/gcc.dg/strlenopt-73.c
index 170b66a..6e15303 100644
--- a/gcc/testsuite/gcc.dg/strlenopt-73.c
+++ b/gcc/testsuite/gcc.dg/strlenopt-73.c
@@ -69,7 +69,7 @@ void test_copy_cond_equal_length (void)
T ( 0 ==, 33, 1, (i0 ? a32 : b32) + 32);
}
-#if defined(__i386__) || defined(__x86_64__) || defined(__aarch64__) \
+#if (defined(__i386__) && defined(__SSE__)) || defined(__x86_64__) || defined(__aarch64__) \
|| defined(__s390__) || defined(__powerpc64__)
/* The following tests assume GCC transforms the memcpy calls into
diff --git a/gcc/testsuite/gcc.dg/strlenopt-80.c b/gcc/testsuite/gcc.dg/strlenopt-80.c
index a853402..a8adbf1 100644
--- a/gcc/testsuite/gcc.dg/strlenopt-80.c
+++ b/gcc/testsuite/gcc.dg/strlenopt-80.c
@@ -5,7 +5,8 @@
such a store.
{ dg-do compile { target { { aarch64*-*-* i?86-*-* x86_64-*-* } || { { powerpc*-*-* } && lp64 } } } }
- { dg-options "-O2 -Wall -fdump-tree-optimized" } */
+ { dg-options "-O2 -Wall -fdump-tree-optimized" }
+ { dg-additional-options "-msse" { target i?86-*-* x86_64-*-* } } */
#define CHAR_BIT __CHAR_BIT__
#define SIZE_MAX __SIZE_MAX__