]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
mfmovd.c: Extend list of supported targets.
authorOleg Endo <oleg.endo@t-online.de>
Tue, 27 Sep 2011 22:46:00 +0000 (22:46 +0000)
committerKaz Kojima <kkojima@gcc.gnu.org>
Tue, 27 Sep 2011 22:46:00 +0000 (22:46 +0000)
* gcc.target/sh/mfmovd.c: Extend list of supported targets.
* gcc.target/sh/struct-arg-dw2.c: Fix typo.
* gcc.target/sh/sh4a-sincos.c: Make test SH4A only.
* gcc.target/sh/sh4a-sincosf.c: Ditto.
* gcc.target/sh/sh4a-cos.c: Ditto.
* gcc.target/sh/sh4a-cosf.c: Ditto.
* gcc.target/sh/sh4a-sin.c: Ditto.
* gcc.target/sh/sh4a-sinf.c: Ditto.
* gcc.target/sh/sh4a-fsrra.c: Ditto.
* gcc.target/sh/sh4a-memmovua.c: Ditto.
* gcc.target/sh/sh4a-bitmovua.c: Ditto.

From-SVN: r179295

12 files changed:
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/sh/mfmovd.c
gcc/testsuite/gcc.target/sh/sh4a-bitmovua.c
gcc/testsuite/gcc.target/sh/sh4a-cos.c
gcc/testsuite/gcc.target/sh/sh4a-cosf.c
gcc/testsuite/gcc.target/sh/sh4a-fsrra.c
gcc/testsuite/gcc.target/sh/sh4a-memmovua.c
gcc/testsuite/gcc.target/sh/sh4a-sin.c
gcc/testsuite/gcc.target/sh/sh4a-sincos.c
gcc/testsuite/gcc.target/sh/sh4a-sincosf.c
gcc/testsuite/gcc.target/sh/sh4a-sinf.c
gcc/testsuite/gcc.target/sh/struct-arg-dw2.c

index 01eed5cca7ef506767711332860d8a7df5213956..86d8fc273190c34e30349260fe0646f71e1ff295 100644 (file)
@@ -1,3 +1,17 @@
+2011-09-27  Oleg Endo  <oleg.endo@t-online.de>
+
+       * gcc.target/sh/mfmovd.c: Extend list of supported targets.
+       * gcc.target/sh/struct-arg-dw2.c: Fix typo.
+       * gcc.target/sh/sh4a-sincos.c: Make test SH4A only.
+       * gcc.target/sh/sh4a-sincosf.c: Ditto.
+       * gcc.target/sh/sh4a-cos.c: Ditto.
+       * gcc.target/sh/sh4a-cosf.c: Ditto.
+       * gcc.target/sh/sh4a-sin.c: Ditto.
+       * gcc.target/sh/sh4a-sinf.c: Ditto.
+       * gcc.target/sh/sh4a-fsrra.c: Ditto.
+       * gcc.target/sh/sh4a-memmovua.c: Ditto.
+       * gcc.target/sh/sh4a-bitmovua.c: Ditto.
+
 2011-09-27  Paolo Carlini  <paolo.carlini@oracle.com>
 
        PR c++/31489
index c8e0094f0c1148c0dc6c2316935f9a368590cc20..b5653c76489581f704391f76e80a4dc065c4b242 100644 (file)
@@ -1,7 +1,9 @@
+/* Verify that we generate fmov.d instructions to move doubles when -mfmovd 
+   option is enabled.  */
 /* { dg-do compile { target "sh*-*-*" } } */
 /* { dg-options "-mfmovd" } */
-/* { dg-skip-if "No double precision FPU support" { "sh*-*-*" } "-m2a-nofpu -m2a-single-only -m4-nofpu -m4-single-only -m4a-nofpu -m4a-single-only" { "" } }  */
-/* { dg-final { scan-assembler "fmov.d"} }  */
+/* { dg-skip-if "" { "sh*-*-*" } { "*" } { "-m2a" "-m2a-single" "-m4" "-m4-single" "-m4-100" "-m4-100-single" "-m4-200" "-m4-200-single" "-m4-300" "-m4-300-single" "-m4a" "-m4a-single" } }  */
+/* { dg-final { scan-assembler "fmov.d" } } */
 
 extern double g;
 
index 761c7b0b5df945451ac3199a016817ea8a3d3110..1c9ae6ee6bdfa2917245d225dfa376f88ae5cc1d 100644 (file)
@@ -1,9 +1,9 @@
-/* Verify that we generate movua to load unaligned 32-bit values.  */
+/* Verify that we generate movua to load unaligned 32-bit values on SH4A.  */
 /* { dg-do compile { target "sh*-*-*" } } */
 /* { dg-options "-O" } */
-/* { dg-final { scan-assembler-times "\tmovua\\.l\t" 6 } } */
+/* { dg-skip-if "" { "sh*-*-*" } { "*" } { "-m4a" "-m4a-single" "-m4a-single-only" "-m4a-nofpu" } }  */
+/* { dg-final { scan-assembler-times "movua.l" 6 } } */
 
-#ifdef __SH4A__
 /* Aligned.  */
 struct s0 { long long d : 32; } x0;
 long long f0() {
@@ -63,11 +63,5 @@ struct u4 { long long c : 32; unsigned long long d : 32; } y4;
 unsigned long long g4() {
   return y4.d;
 }
-#else
-asm ("movua.l\t");
-asm ("movua.l\t");
-asm ("movua.l\t");
-asm ("movua.l\t");
-asm ("movua.l\t");
-asm ("movua.l\t");
-#endif
+
+
index 198d41f8675d65351f11f483bf14d4763a85fae6..c2e421c6a055fcd68c06b8bada41d9a3a7d8ceec 100644 (file)
@@ -1,13 +1,11 @@
 /* Verify that we generate single-precision sine and cosine approximate
-   (fsca) in fast math mode.  */
+   (fsca) in fast math mode on SH4A with FPU.  */
 /* { dg-do compile { target "sh*-*-*" } } */
 /* { dg-options "-O -ffast-math" } */
-/* { dg-final { scan-assembler "\tfsca\t" } } */
+/* { dg-skip-if "" { "sh*-*-*" } { "*" } { "-m4a" "-m4a-single" "-m4a-single-only" } }  */
+/* { dg-final { scan-assembler "fsca" } } */
 
-#if defined __SH4A__ && ! defined __SH4_NOFPU__
 #include <math.h>
 
 double test(double f) { return cos(f); }
-#else
-asm ("fsca\t");
-#endif
+
index f78c140d5014dde3679934659cec2279b5e17401..68bb20f2c336359cdce5d6928e5cd17e8e066a14 100644 (file)
@@ -1,13 +1,11 @@
 /* Verify that we generate single-precision sine and cosine approximate
-   (fsca) in fast math mode.  */
+   (fsca) in fast math mode on SH4A with FPU.  */
 /* { dg-do compile { target "sh*-*-*" } } */
 /* { dg-options "-O -ffast-math" } */
-/* { dg-final { scan-assembler "\tfsca\t" } } */
+/* { dg-skip-if "" { "sh*-*-*" } { "*" } { "-m4a" "-m4a-single" "-m4a-single-only" } }  */
+/* { dg-final { scan-assembler "fsca" } } */
 
-#if defined __SH4A__ && ! defined __SH4_NOFPU__
 #include <math.h>
 
 float test(float f) { return cosf(f); }
-#else
-asm ("fsca\t");
-#endif
+
index c8f04e4d2e2726df0c6402fed9cc1374398ce424..4ce2e28e22fbebeccb3b54a096ce8955e082061e 100644 (file)
@@ -1,13 +1,11 @@
 /* Verify that we generate single-precision square root reciprocal
-   approximate (fsrra) in fast math mode.  */
+   approximate (fsrra) in fast math mode on SH4A with FPU.  */
 /* { dg-do compile { target "sh*-*-*" } } */
 /* { dg-options "-O -ffast-math" } */
-/* { dg-final { scan-assembler "\tfsrra\t" } } */
+/* { dg-skip-if "" { "sh*-*-*" } { "*" } { "-m4a" "-m4a-single" "-m4a-single-only" } }  */
+/* { dg-final { scan-assembler "fsrra" } } */
 
-#if defined __SH4A__ && ! defined __SH4_NOFPU__
 #include <math.h>
 
 float test(float f) { return 1 / sqrtf(f); }
-#else
-asm ("fsrra\t");
-#endif
+
index 359dd8feb907f07f4cca8b4237a7f40337ae7f31..7e817c4c12295102b5b94dfecaeecf62111fc63d 100644 (file)
@@ -1,17 +1,14 @@
 /* Verify that we generate movua to copy unaligned memory regions to
-   32-bit-aligned addresses.  */
+   32-bit-aligned addresses on SH4A.  */
 /* { dg-do compile { target "sh*-*-*" } } */
 /* { dg-options "-O" } */
-/* { dg-final { scan-assembler-times "\tmovua\\.l\t" 2 } } */
+/* { dg-skip-if "" { "sh*-*-*" } { "*" } { "-m4a" "-m4a-single" "-m4a-single-only" "-m4a-nofpu" } }  */
+/* { dg-final { scan-assembler-times "movua.l" 2 } } */
 
-#ifdef __SH4A__
 #include <string.h>
 
 struct s { int i; char a[10], b[10]; } x;
 int f() {
   memcpy(x.a, x.b, 10);
 }
-#else
-asm ("movua.l\t+");
-asm ("movua.l\t+");
-#endif
+
index 9f46f600763ad3473dce7a54be9bd836b3cb600a..cd8f0783d7bfcabbe1ecd234bbe667ef584bf060 100644 (file)
@@ -1,13 +1,11 @@
 /* Verify that we generate single-precision sine and cosine approximate
-   (fsca) in fast math mode.  */
+   (fsca) in fast math mode on SH4A with FPU.  */
 /* { dg-do compile { target "sh*-*-*" } } */
 /* { dg-options "-O -ffast-math" } */
-/* { dg-final { scan-assembler "\tfsca\t" } } */
+/* { dg-skip-if "" { "sh*-*-*" } { "*" } { "-m4a" "-m4a-single" "-m4a-single-only" } }  */
+/* { dg-final { scan-assembler "fsca" } } */
 
-#if defined __SH4A__ && ! defined __SH4_NOFPU__
 #include <math.h>
 
 double test(double f) { return sin(f); }
-#else
-asm ("fsca\t");
-#endif
+
index f42937975346dad0e999826904504418aca2f7bb..423dda1433b9c875c1a38fa257cc85c3e94174f1 100644 (file)
@@ -3,12 +3,10 @@
    sine and cosine.  */
 /* { dg-do compile { target "sh*-*-*" } } */
 /* { dg-options "-O -ffast-math" } */
-/* { dg-final { scan-assembler-times "\tfsca\t" 1 } } */
+/* { dg-skip-if "" { "sh*-*-*" } { "*" } { "-m4a" "-m4a-single" "-m4a-single-only" } }  */
+/* { dg-final { scan-assembler-times "fsca" 1 } } */
 
-#if defined __SH4A__ && ! defined __SH4_NOFPU__
 #include <math.h>
 
 double test(double f) { return sin(f) + cos(f); }
-#else
-asm ("fsca\t");
-#endif
+
index 42913dbd59eaebeda56387d269b373250238d76a..0ca33e30a0fdf1e1e28fafa115d77cbd43bc8af0 100644 (file)
@@ -3,12 +3,10 @@
    sine and cosine.  */
 /* { dg-do compile { target "sh*-*-*" } } */
 /* { dg-options "-O -ffast-math" } */
-/* { dg-final { scan-assembler-times "\tfsca\t" 1 } } */
+/* { dg-skip-if "" { "sh*-*-*" } { "*" } { "-m4a" "-m4a-single" "-m4a-single-only" } }  */
+/* { dg-final { scan-assembler-times "fsca" 1 } } */
 
-#if defined __SH4A__ && ! defined __SH4_NOFPU__
 #include <math.h>
 
 float test(float f) { return sinf(f) + cosf(f); }
-#else
-asm ("fsca\t");
-#endif
+
index 2a2343fd73a4ca79030b263b0a37b91080b6e919..4d9abea045b3e1bc79c14799836ce1b0ded5eaa1 100644 (file)
@@ -1,13 +1,11 @@
 /* Verify that we generate single-precision sine and cosine approximate
-   (fsca) in fast math mode.  */
+   (fsca) in fast math mode on SH4A with FPU.  */
 /* { dg-do compile { target "sh*-*-*" } } */
 /* { dg-options "-O -ffast-math" } */
-/* { dg-final { scan-assembler "\tfsca\t" } } */
+/* { dg-skip-if "" { "sh*-*-*" } { "*" } { "-m4a" "-m4a-single" "-m4a-single-only" } }  */
+/* { dg-final { scan-assembler "fsca" } } */
 
-#if defined __SH4A__ && ! defined __SH4_NOFPU__
 #include <math.h>
 
 float test(float f) { return sinf(f); }
-#else
-asm ("fsca\t");
-#endif
+
index effd13d19a449f66853ef00954a74ac83f770cd4..81f80df1e68124878a7d961e8d560ca6d5ad153c 100644 (file)
@@ -1,4 +1,4 @@
-/* Verify that we don't generate fame related insn against stack adjustment
+/* Verify that we don't generate frame related insn against stack adjustment
    for the object sent partially in registers. */
 /* { dg-do compile { target "sh*-*-*" } } */
 /* { dg-options "-g" } */