[gcc(refs/users/meissner/heads/work141-ovpair)] Sync test files.

Michael Meissner meissner@gcc.gnu.org
Fri Oct 27 17:52:16 GMT 2023


https://gcc.gnu.org/g:3b7917e01b36fb6c3d7f9a7bf72aa8e74c99ef64

commit 3b7917e01b36fb6c3d7f9a7bf72aa8e74c99ef64
Author: Michael Meissner <meissner@linux.ibm.com>
Date:   Fri Oct 27 13:51:49 2023 -0400

    Sync test files.
    
    2023-10-27  Michael Meissner  <meissner@linux.ibm.com>
    
    gcc/testsuite/
    
            * /gcc.target/powerpc/vector-pair-1.c: Rename.
            * /gcc.target/powerpc/vector-pair-2.c: Rename.
            * /gcc.target/powerpc/vector-pair-3.c: Rename.
            * /gcc.target/powerpc/vector-pair-4.c: Rename.
            * /gcc.target/powerpc/vector-pair-5.c: Rename.
            * /gcc.target/powerpc/vector-pair-6.c: Rename.
            * /gcc.target/powerpc/vector-pair-7.c: Rename.
            * /gcc.target/powerpc/vector-pair-8.c: Rename.
            * /gcc.target/powerpc/vector-pair-9.c: New test.

Diff:
---
 .../powerpc/{vector-pair-01.c => vector-pair-1.c}  |  0
 .../powerpc/{vector-pair-02.c => vector-pair-2.c}  |  0
 .../powerpc/{vector-pair-03.c => vector-pair-3.c}  |  0
 .../powerpc/{vector-pair-04.c => vector-pair-4.c}  |  0
 .../powerpc/{vector-pair-05.c => vector-pair-5.c}  |  0
 .../powerpc/{vector-pair-06.c => vector-pair-6.c}  |  0
 .../powerpc/{vector-pair-07.c => vector-pair-7.c}  |  0
 .../powerpc/{vector-pair-08.c => vector-pair-8.c}  |  0
 gcc/testsuite/gcc.target/powerpc/vector-pair-9.c   | 45 ++++++++++++++++++++++
 9 files changed, 45 insertions(+)

diff --git a/gcc/testsuite/gcc.target/powerpc/vector-pair-01.c b/gcc/testsuite/gcc.target/powerpc/vector-pair-1.c
similarity index 100%
rename from gcc/testsuite/gcc.target/powerpc/vector-pair-01.c
rename to gcc/testsuite/gcc.target/powerpc/vector-pair-1.c
diff --git a/gcc/testsuite/gcc.target/powerpc/vector-pair-02.c b/gcc/testsuite/gcc.target/powerpc/vector-pair-2.c
similarity index 100%
rename from gcc/testsuite/gcc.target/powerpc/vector-pair-02.c
rename to gcc/testsuite/gcc.target/powerpc/vector-pair-2.c
diff --git a/gcc/testsuite/gcc.target/powerpc/vector-pair-03.c b/gcc/testsuite/gcc.target/powerpc/vector-pair-3.c
similarity index 100%
rename from gcc/testsuite/gcc.target/powerpc/vector-pair-03.c
rename to gcc/testsuite/gcc.target/powerpc/vector-pair-3.c
diff --git a/gcc/testsuite/gcc.target/powerpc/vector-pair-04.c b/gcc/testsuite/gcc.target/powerpc/vector-pair-4.c
similarity index 100%
rename from gcc/testsuite/gcc.target/powerpc/vector-pair-04.c
rename to gcc/testsuite/gcc.target/powerpc/vector-pair-4.c
diff --git a/gcc/testsuite/gcc.target/powerpc/vector-pair-05.c b/gcc/testsuite/gcc.target/powerpc/vector-pair-5.c
similarity index 100%
rename from gcc/testsuite/gcc.target/powerpc/vector-pair-05.c
rename to gcc/testsuite/gcc.target/powerpc/vector-pair-5.c
diff --git a/gcc/testsuite/gcc.target/powerpc/vector-pair-06.c b/gcc/testsuite/gcc.target/powerpc/vector-pair-6.c
similarity index 100%
rename from gcc/testsuite/gcc.target/powerpc/vector-pair-06.c
rename to gcc/testsuite/gcc.target/powerpc/vector-pair-6.c
diff --git a/gcc/testsuite/gcc.target/powerpc/vector-pair-07.c b/gcc/testsuite/gcc.target/powerpc/vector-pair-7.c
similarity index 100%
rename from gcc/testsuite/gcc.target/powerpc/vector-pair-07.c
rename to gcc/testsuite/gcc.target/powerpc/vector-pair-7.c
diff --git a/gcc/testsuite/gcc.target/powerpc/vector-pair-08.c b/gcc/testsuite/gcc.target/powerpc/vector-pair-8.c
similarity index 100%
rename from gcc/testsuite/gcc.target/powerpc/vector-pair-08.c
rename to gcc/testsuite/gcc.target/powerpc/vector-pair-8.c
diff --git a/gcc/testsuite/gcc.target/powerpc/vector-pair-9.c b/gcc/testsuite/gcc.target/powerpc/vector-pair-9.c
new file mode 100644
index 000000000000..04410b9c51c7
--- /dev/null
+++ b/gcc/testsuite/gcc.target/powerpc/vector-pair-9.c
@@ -0,0 +1,45 @@
+/* { dg-do compile } */
+/* { dg-require-effective-target power10_ok } */
+/* { dg-options "-mdejagnu-cpu=power10 -O2" } */
+
+/* Test vector pair built-in functions to assemble and extract elements.  */
+
+void assemble_two_loads (__vector_pair *p)
+{
+  vector double a = { 1.0, 2.0 };
+  vector double b = { 3.0, 4.0 };
+
+  /* 2 plxv, 1 stxvp.  */
+  *p = __builtin_vpair_f64_assemble (a, b);
+}
+
+void foo2 (__vector_pair *p)
+{
+  vector double a = { 1.0, 1.0 };
+  vector double b = { 2.0, 2.0 };
+
+  /* 2 xxspltidp, 1 stxvp.  */
+  *p = __builtin_vpair_f64_assemble (a, b);
+}
+
+void foo3 (__vector_pair *p, __vector_pair *q, __vector_pair *r)
+{
+  __vector_pair vq = *q;
+  __vector_pair vr = *r;
+  vector double vq_0 = __builtin_vpair_f64_extract_vector (vq, 0);
+  vector double vq_1 = __builtin_vpair_f64_extract_vector (vq, 1);
+  vector double vr_0 = __builtin_vpair_f64_extract_vector (vr, 0);
+  vector double vr_1 = __builtin_vpair_f64_extract_vector (vr, 1);
+  vector double vp_0 = vq_0 + vr_0;
+  vector double vp_1 = vq_1 - vr_1;
+
+  /* 2 lxvp, 1 xvadddp, 1 xvsubdp, 1 stxvp.  */
+  *p = __builtin_vpair_f64_assemble (vp_0, vp_1);
+}
+
+/* { dg-final { scan-assembler-times {\mlxvp\M}      2 } } */
+/* { dg-final { scan-assembler-times {\mplxv\M}      2 } } */
+/* { dg-final { scan-assembler-times {\mstxvp\M}     3 } } */
+/* { dg-final { scan-assembler-times {\mxvadddp\M}   1 } } */
+/* { dg-final { scan-assembler-times {\mxvsubdp\M}   1 } } */
+/* { dg-final { scan-assembler-times {\mxxspltidp\M} 2 } } */


More information about the Gcc-cvs mailing list