]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
backport: re PR target/80510 (Optimize Power7/power8 Altivec load/stores)
authorMichael Meissner <meissner@linux.vnet.ibm.com>
Thu, 22 Jun 2017 00:56:55 +0000 (00:56 +0000)
committerMichael Meissner <meissner@gcc.gnu.org>
Thu, 22 Jun 2017 00:56:55 +0000 (00:56 +0000)
2017-06-21  Michael Meissner  <meissner@linux.vnet.ibm.com>

Back port from mainline
PR target/80510
* gcc.target/powerpc/pr80510-1.c: Restrict test to 64-bit until
32-bit support is added.  Change ITYPE size to 64-bit integer.
* gcc.target/powerpc/pr80510-2.c: Likewise.

From-SVN: r249493

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/powerpc/pr80510-1.c
gcc/testsuite/gcc.target/powerpc/pr80510-2.c

index 13ae0fb2898d414a3072f02405aef8b6e3a5f20a..c18349687455cc724f5de9b41cf211a59a921f0c 100644 (file)
@@ -1,5 +1,11 @@
 2017-06-21  Michael Meissner  <meissner@linux.vnet.ibm.com>
 
+       Back port from mainline
+       PR target/80510
+       * gcc.target/powerpc/pr80510-1.c: Restrict test to 64-bit until
+       32-bit support is added.  Change ITYPE size to 64-bit integer.
+       * gcc.target/powerpc/pr80510-2.c: Likewise.
+
        Back port from mainline
        2017-05-19  Michael Meissner  <meissner@linux.vnet.ibm.com>
 
index cf0450259995ab3c8b2bd1b109ce595fea0ce814..f9d9fde49e5d81aac5577ed1192671a4a3f62e00 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
 /* { dg-skip-if "" { powerpc*-*-darwin* } { "*" } { "" } } */
 /* { dg-require-effective-target powerpc_vsx_ok } */
 /* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { "-mcpu=power7" } } */
@@ -6,7 +6,9 @@
 
 /* Make sure that STXSDX is generated for double scalars in Altivec registers
    on power7 instead of moving the value to a FPR register and doing a X-FORM
-   store.  */
+   store.
+
+   32-bit currently does not have support for STXSDX in the mov{df,dd} patterns.  */
 
 #ifndef TYPE
 #define TYPE double
@@ -21,7 +23,7 @@
 #endif
 
 #ifndef ITYPE
-#define ITYPE long
+#define ITYPE __INT64_TYPE__
 #endif
 
 #ifdef DO_CALL
@@ -206,6 +208,6 @@ void test (ITYPE *bits, ITYPE n, TYPE one, TYPE_IN *p, TYPE_OUT *q)
   q[49] = x_49;
 }
 
-/* { dg-final { scan-assembler     {\xsadddp\M} } } */
-/* { dg-final { scan-assembler     {\stxsdx\M}  } } */
-/* { dg-final { scan-assembler-not {\mmfvsrd\M} } } */
+/* { dg-final { scan-assembler     {\mxsadddp\M} } } */
+/* { dg-final { scan-assembler     {\mstxsdx\M}  } } */
+/* { dg-final { scan-assembler-not {\mmfvsrd\M}  } } */
index 1233df0560162240e35acd6aeac9f6f03bb050cd..6edcc36e065b9cf3ba78f8297c264c691161af1f 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
 /* { dg-skip-if "" { powerpc*-*-darwin* } { "*" } { "" } } */
 /* { dg-require-effective-target powerpc_p8vector_ok } */
 /* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { "-mcpu=power8" } } */
@@ -6,7 +6,9 @@
 
 /* Make sure that STXSSPX is generated for float scalars in Altivec registers
    on power7 instead of moving the value to a FPR register and doing a X-FORM
-   store.  */
+   store.
+
+   32-bit currently does not have support for STXSSPX in the mov{sf,sd} patterns.  */
 
 #ifndef TYPE
 #define TYPE float
@@ -21,7 +23,7 @@
 #endif
 
 #ifndef ITYPE
-#define ITYPE long
+#define ITYPE __INT64_TYPE__
 #endif
 
 #ifdef DO_CALL
@@ -206,7 +208,7 @@ void test (ITYPE *bits, ITYPE n, TYPE one, TYPE_IN *p, TYPE_OUT *q)
   q[49] = x_49;
 }
 
-/* { dg-final { scan-assembler     {\xsaddsp\M}  } } */
-/* { dg-final { scan-assembler     {\stxsspx\M}  } } */
+/* { dg-final { scan-assembler     {\mxsaddsp\M} } } */
+/* { dg-final { scan-assembler     {\mstxsspx\M} } } */
 /* { dg-final { scan-assembler-not {\mmfvsrd\M}  } } */
 /* { dg-final { scan-assembler-not {\mmfvsrwz\M} } } */