aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorDavid Edelsohn <dje.gcc@gmail.com>2020-10-21 12:24:00 -0400
committerDavid Edelsohn <dje.gcc@gmail.com>2020-10-21 16:17:43 -0400
commit083c17f86dcf13fc344667432b59c96bf2b63dcb (patch)
treed3dc3171f76327306009fbca661da338fbd9ff8b /gcc
parent945151b7f14c5d105abd8117f208ae9e3db91fb4 (diff)
downloadgcc-083c17f86dcf13fc344667432b59c96bf2b63dcb.zip
gcc-083c17f86dcf13fc344667432b59c96bf2b63dcb.tar.gz
gcc-083c17f86dcf13fc344667432b59c96bf2b63dcb.tar.bz2
testsuite: Enable p9-lxvx-stxvx testcases and fold-vec-extract
This patch enables the p9-lxvx-stxvx testcases with appropriate requirements. It also adjusts the expected matching instructions in the fold-vec-extract testcases for BE. gcc/testsuite/ChangeLog: * gcc.target/powerpc/fold-vec-extract-float.p9.c: rldicl and subfic only for target LE. * gcc.target/powerpc/fold-vec-extract-longlong.p9.c: xori only for target LE. Adjust mfvsrd and add mfvsrld for BE. * gcc.target/powerpc/fold-vec-extract-short.p9.c: vextuhrx for LE. vextuhlx for BE. * gcc.target/powerpc/p9-lxvx-stxvx-1.c: Remove target. * gcc.target/powerpc/p9-lxvx-stxvx-2.c: Remove target. * gcc.target/powerpc/p9-lxvx-stxvx-3.c: Remove target. Require float128
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/gcc.target/powerpc/fold-vec-extract-float.p9.c4
-rw-r--r--gcc/testsuite/gcc.target/powerpc/fold-vec-extract-longlong.p9.c8
-rw-r--r--gcc/testsuite/gcc.target/powerpc/fold-vec-extract-short.p9.c7
-rw-r--r--gcc/testsuite/gcc.target/powerpc/p9-lxvx-stxvx-1.c2
-rw-r--r--gcc/testsuite/gcc.target/powerpc/p9-lxvx-stxvx-2.c2
-rw-r--r--gcc/testsuite/gcc.target/powerpc/p9-lxvx-stxvx-3.c3
6 files changed, 15 insertions, 11 deletions
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-extract-float.p9.c b/gcc/testsuite/gcc.target/powerpc/fold-vec-extract-float.p9.c
index 1acd477..aaa8a92 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-extract-float.p9.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-extract-float.p9.c
@@ -6,8 +6,8 @@
/* { dg-options "-mdejagnu-cpu=power9 -O2 " } */
/* { dg-final { scan-assembler-times {\mxscvspdp\M} 2 } } */
-/* { dg-final { scan-assembler-times {\mrldicl\M} 1 } } */
-/* { dg-final { scan-assembler-times {\msubfic\M} 1 } } */
+/* { dg-final { scan-assembler-times {\mrldicl\M} 1 { target le } } } */
+/* { dg-final { scan-assembler-times {\msubfic\M} 1 { target le } } } */
/* { dg-final { scan-assembler-times {\msldi\M} 1 } } */
/* { dg-final { scan-assembler-times {\mmtvsrdd\M} 1 } } */
/* { dg-final { scan-assembler-times {\mvslo\M} 1 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-extract-longlong.p9.c b/gcc/testsuite/gcc.target/powerpc/fold-vec-extract-longlong.p9.c
index e7e1c56..29814ed 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-extract-longlong.p9.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-extract-longlong.p9.c
@@ -1,5 +1,5 @@
/* Verify that overloaded built-ins for vec_extract() with long long
- inputs produce the right code for a P9 (LE) target. */
+ inputs produce the right code for a P9 target. */
/* { dg-do compile { target lp64 } } */
/* { dg-require-effective-target powerpc_p9vector_ok } */
@@ -10,11 +10,13 @@
// p9 vars: xori, rldic, mtvsrdd, vslo, mfvsrd
/* results. */
-/* { dg-final { scan-assembler-times {\mxori\M} 3 } } */
+/* { dg-final { scan-assembler-times {\mxori\M} 3 { target le } } } */
/* { dg-final { scan-assembler-times {\mrldic\M} 3 } } */
/* { dg-final { scan-assembler-times {\mmtvsrdd\M} 3 } } */
/* { dg-final { scan-assembler-times {\mvslo\M} 3 } } */
-/* { dg-final { scan-assembler-times {\mmfvsrd\M} 6 } } */
+/* { dg-final { scan-assembler-times {\mmfvsrd\M} 6 { target le } } } */
+/* { dg-final { scan-assembler-times {\mmfvsrd\M} 3 { target be } } } */
+/* { dg-final { scan-assembler-times {\mmfvsrld\M} 3 { target be } } } */
#include <altivec.h>
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-extract-short.p9.c b/gcc/testsuite/gcc.target/powerpc/fold-vec-extract-short.p9.c
index 5651986..fac35cb 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-extract-short.p9.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-extract-short.p9.c
@@ -1,17 +1,18 @@
/* Verify that overloaded built-ins for vec_extract() with short
- inputs produce the right code for a P9 (LE) target. */
+ inputs produce the right code for a P9 target. */
/* { dg-do compile { target lp64 } } */
/* { dg-require-effective-target powerpc_p9vector_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -O2" } */
-// six tests total. Targeting P9 LE.
+// six tests total. Targeting P9.
// p9 (le) variable offset: slwi, vextuhlx, extsh
// p9 (le) const offset: li, vextuhlx, extsh
/* { dg-final { scan-assembler-times {\mslwi\M} 3 } } */
/* { dg-final { scan-assembler-times {\mli\M} 3 } } */
-/* { dg-final { scan-assembler-times "vextuhrx" 6 } } */
+/* { dg-final { scan-assembler-times "vextuhrx" 6 { target le } } } */
+/* { dg-final { scan-assembler-times "vextuhlx" 6 { target be } } } */
/* { dg-final { scan-assembler-times {\mextsh\M} 2 } } */
#include <altivec.h>
diff --git a/gcc/testsuite/gcc.target/powerpc/p9-lxvx-stxvx-1.c b/gcc/testsuite/gcc.target/powerpc/p9-lxvx-stxvx-1.c
index e302f71..5539429 100644
--- a/gcc/testsuite/gcc.target/powerpc/p9-lxvx-stxvx-1.c
+++ b/gcc/testsuite/gcc.target/powerpc/p9-lxvx-stxvx-1.c
@@ -1,4 +1,4 @@
-/* { dg-do compile { target { powerpc64le-*-* } } } */
+/* { dg-do compile } */
/* { dg-require-effective-target powerpc_p9vector_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -O3" } */
/* { dg-final { scan-assembler "lxvx" } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/p9-lxvx-stxvx-2.c b/gcc/testsuite/gcc.target/powerpc/p9-lxvx-stxvx-2.c
index 0da44eb..edab616 100644
--- a/gcc/testsuite/gcc.target/powerpc/p9-lxvx-stxvx-2.c
+++ b/gcc/testsuite/gcc.target/powerpc/p9-lxvx-stxvx-2.c
@@ -1,4 +1,4 @@
-/* { dg-do compile { target { powerpc64le-*-* } } } */
+/* { dg-do compile } */
/* { dg-require-effective-target powerpc_p9vector_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -O1" } */
/* { dg-final { scan-assembler "lxvx" } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/p9-lxvx-stxvx-3.c b/gcc/testsuite/gcc.target/powerpc/p9-lxvx-stxvx-3.c
index 6d64a1b..3cb28ee 100644
--- a/gcc/testsuite/gcc.target/powerpc/p9-lxvx-stxvx-3.c
+++ b/gcc/testsuite/gcc.target/powerpc/p9-lxvx-stxvx-3.c
@@ -1,4 +1,5 @@
-/* { dg-do compile { target { powerpc64le-*-* } } } */
+/* { dg-do compile } */
+/* { dg-require-effective-target ppc_float128_sw } */
/* { dg-options "-mdejagnu-cpu=power9 -O3 -mfloat128" } */
/* { dg-require-effective-target powerpc_p9vector_ok } */
/* { dg-final { scan-assembler "lxvx" } } */