aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRevital Eres <eres@il.ibm.com>2009-04-27 12:17:09 +0000
committerRevital Eres <revitale@gcc.gnu.org>2009-04-27 12:17:09 +0000
commitbd6390752292e9c14f366cebb04a7b4e69211711 (patch)
treed454f81c1aab535d757b5ac782fd5d05b12de69e
parente97809c61da551db637b6113095522795ca46f60 (diff)
downloadgcc-bd6390752292e9c14f366cebb04a7b4e69211711.zip
gcc-bd6390752292e9c14f366cebb04a7b4e69211711.tar.gz
gcc-bd6390752292e9c14f366cebb04a7b4e69211711.tar.bz2
Add dump file checks for sms tests
From-SVN: r146838
-rw-r--r--gcc/testsuite/ChangeLog14
-rw-r--r--gcc/testsuite/gcc.dg/sms-1.c11
-rw-r--r--gcc/testsuite/gcc.dg/sms-2.c1
-rw-r--r--gcc/testsuite/gcc.dg/sms-3.c6
-rw-r--r--gcc/testsuite/gcc.dg/sms-4.c6
-rw-r--r--gcc/testsuite/gcc.dg/sms-5.c7
-rw-r--r--gcc/testsuite/gcc.dg/sms-6.c6
-rw-r--r--gcc/testsuite/gcc.dg/sms-7.c6
-rw-r--r--gcc/testsuite/gcc.dg/sms-8.c (renamed from gcc/testsuite/gcc.dg/sms-antideps.c)7
9 files changed, 55 insertions, 9 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index d959bb4..49401aa 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,17 @@
+2009-04-27 Revital Eres <eres@il.ibm.com>
+
+ * gcc.dg/sms-1.c: Add noinline attribute, create sms dump file
+ and check it.
+ * gcc.dg/sms-2.c: Add dump check.
+ * gcc.dg/sms-3.c: Add noinline attribute, create sms dump file
+ and check it.
+ * gcc.dg/sms-4.c: Likewise.
+ * gcc.dg/sms-5.c: Likewise.
+ * gcc.dg/sms-6.c: Likewise.
+ * gcc.dg/sms-7.c: Likewise.
+ * gcc.dg/sms-antideps.c: Rename to...
+ * gcc.dg/sms-8.c: This and add sms dump file and check it.
+
2009-04-27 Eric Botcazou <ebotcazou@adacore.com>
* gnat.dg/opt2.adb: New test.
diff --git a/gcc/testsuite/gcc.dg/sms-1.c b/gcc/testsuite/gcc.dg/sms-1.c
index d915ef5..26e502e 100644
--- a/gcc/testsuite/gcc.dg/sms-1.c
+++ b/gcc/testsuite/gcc.dg/sms-1.c
@@ -1,13 +1,16 @@
/* The same test as loop-3c.c. It failed on ia64
due to not handling of subreg in the lhs that is fixed. */
/* { dg-do run } */
-/* { dg-options "-O2 -fmodulo-sched -fmodulo-sched-allow-regmoves -w" } */
+/* { dg-options "-O2 -fmodulo-sched -fmodulo-sched-allow-regmoves -fdump-rtl-sms" } */
#include <limits.h>
+extern void abort (void);
void * a[255];
+__attribute__ ((noinline))
+void
f (m)
{
int i;
@@ -21,6 +24,7 @@ f (m)
while (i < INT_MAX/2 + 1 + 4 * 4);
}
+int
main ()
{
a[0x10] = 0;
@@ -33,6 +37,9 @@ main ()
f (INT_MAX/2 + 1);
if (! a[0x10] || a[0x08])
abort ();
- exit (0);
+ return 0;
}
+/* { dg-final { scan-rtl-dump-times "SMS succeeded" 1 "sms" { target powerpc*-*-* spu-*-* } } } */
+/* { dg-final { cleanup-rtl-dump "sms" } } */
+
diff --git a/gcc/testsuite/gcc.dg/sms-2.c b/gcc/testsuite/gcc.dg/sms-2.c
index 04d0482..9ea63bd 100644
--- a/gcc/testsuite/gcc.dg/sms-2.c
+++ b/gcc/testsuite/gcc.dg/sms-2.c
@@ -33,4 +33,5 @@ fun (nb)
}
}
+/* { dg-final { scan-rtl-dump-times "SMS succeeded" 1 "sms" { target spu-*-* powerpc*-*-* } } } */
/* { dg-final { cleanup-rtl-dump "sms" } } */
diff --git a/gcc/testsuite/gcc.dg/sms-3.c b/gcc/testsuite/gcc.dg/sms-3.c
index 66792b5..b78c2b2 100644
--- a/gcc/testsuite/gcc.dg/sms-3.c
+++ b/gcc/testsuite/gcc.dg/sms-3.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-O2 -fmodulo-sched -funroll-loops" } */
+/* { dg-options "-O2 -fmodulo-sched -funroll-loops -fdump-rtl-sms" } */
extern void abort (void);
@@ -8,6 +8,7 @@ int Y[1000]={0};
extern void abort (void);
+__attribute__ ((noinline))
int
foo (int len, long a)
{
@@ -37,3 +38,6 @@ main ()
return 0;
}
+/* { dg-final { scan-rtl-dump-times "SMS succeeded" 1 "sms" { target spu-*-* powerpc*-*-* } } } */
+/* { dg-final { cleanup-rtl-dump "sms" } } */
+
diff --git a/gcc/testsuite/gcc.dg/sms-4.c b/gcc/testsuite/gcc.dg/sms-4.c
index 04e89bb..eafb395 100644
--- a/gcc/testsuite/gcc.dg/sms-4.c
+++ b/gcc/testsuite/gcc.dg/sms-4.c
@@ -1,6 +1,6 @@
/* Inspired from sbitmap_a_or_b_and_c_cg function in sbitmap.c. */
/* { dg-do run } */
-/* { dg-options "-O2 -fmodulo-sched -fmodulo-sched-allow-regmoves" } */
+/* { dg-options "-O2 -fmodulo-sched -fmodulo-sched-allow-regmoves -fdump-rtl-sms" } */
extern void abort (void);
@@ -9,6 +9,7 @@ int b[5] = { 0, 1, 0, 1, 0 };
int c[5] = { 0, 0, 1, 1, 0 };
int dst[5] = { 0, 0, 0, 0, 0 };
+__attribute__ ((noinline))
void
foo (int size, int *ap, int *bp, int *cp, int *dstp)
{
@@ -33,3 +34,6 @@ main ()
return 0;
}
+/* { dg-final { scan-rtl-dump-times "SMS succeeded" 1 "sms" { target spu-*-* powerpc*-*-* } } } */
+/* { dg-final { cleanup-rtl-dump "sms" } } */
+
diff --git a/gcc/testsuite/gcc.dg/sms-5.c b/gcc/testsuite/gcc.dg/sms-5.c
index 9c2e016..6fbb612 100644
--- a/gcc/testsuite/gcc.dg/sms-5.c
+++ b/gcc/testsuite/gcc.dg/sms-5.c
@@ -1,10 +1,11 @@
/* { dg-do run } */
-/* { dg-options "-O2 -fmodulo-sched -fmodulo-sched-allow-regmoves -funroll-loops" } */
+/* { dg-options "-O2 -fmodulo-sched -fmodulo-sched-allow-regmoves -funroll-loops -fdump-rtl-sms" } */
/* This is the same test as loop-2e.c test. It is related to a fix in
the generation of the prolog and epilog. */
extern void abort (void);
+__attribute__ ((noinline))
void f (int *p, int **q)
{
int i;
@@ -45,3 +46,7 @@ int main ()
return 0;
}
+/* { dg-final { scan-rtl-dump-times "SMS succeeded" 1 "sms" { target powerpc*-*-* spu-*-* } } } */
+
+/* { dg-final { cleanup-rtl-dump "sms" } } */
+
diff --git a/gcc/testsuite/gcc.dg/sms-6.c b/gcc/testsuite/gcc.dg/sms-6.c
index 3fe8ecd..cd63565 100644
--- a/gcc/testsuite/gcc.dg/sms-6.c
+++ b/gcc/testsuite/gcc.dg/sms-6.c
@@ -1,8 +1,9 @@
/* { dg-do run } */
-/* { dg-options "-O2 -fmodulo-sched " } */
+/* { dg-options "-O2 -fmodulo-sched -fdump-rtl-sms" } */
extern void abort (void);
+__attribute__ ((noinline))
void foo (int * __restrict__ a, int * __restrict__ b, int * __restrict__ c)
{
int i;
@@ -37,4 +38,7 @@ int main()
return 0;
}
+/* { dg-final { scan-rtl-dump-times "SMS succeeded" 1 "sms" { target spu-*-* } } } */
+/* { dg-final { scan-rtl-dump-times "SMS succeeded" 3 "sms" { target powerpc*-*-* } } } */
+/* { dg-final { cleanup-rtl-dump "sms" } } */
diff --git a/gcc/testsuite/gcc.dg/sms-7.c b/gcc/testsuite/gcc.dg/sms-7.c
index 7c4810d..a0aa14b 100644
--- a/gcc/testsuite/gcc.dg/sms-7.c
+++ b/gcc/testsuite/gcc.dg/sms-7.c
@@ -1,8 +1,9 @@
/* { dg-do run } */
-/* { dg-options "-O2 -fmodulo-sched -fstrict-aliasing " } */
+/* { dg-options "-O2 -fmodulo-sched -fstrict-aliasing -fdump-rtl-sms" } */
extern void abort (void);
+__attribute__ ((noinline))
void foo (int * __restrict__ a, int * __restrict__ b, short * c)
{
int i;
@@ -38,4 +39,7 @@ int main()
return 0;
}
+/* { dg-final { scan-rtl-dump-times "SMS succeeded" 1 "sms" { target spu-*-* } } } */
+/* { dg-final { scan-rtl-dump-times "SMS succeeded" 3 "sms" { target powerpc*-*-* } } } */
+/* { dg-final { cleanup-rtl-dump "sms" } } */
diff --git a/gcc/testsuite/gcc.dg/sms-antideps.c b/gcc/testsuite/gcc.dg/sms-8.c
index 85976d6..afac55d 100644
--- a/gcc/testsuite/gcc.dg/sms-antideps.c
+++ b/gcc/testsuite/gcc.dg/sms-8.c
@@ -3,10 +3,11 @@
that was not fixed by reg-moves. */
/* { dg-do run } */
- /* { dg-options "-O2 -fmodulo-sched -fmodulo-sched-allow-regmoves" } */
+ /* { dg-options "-O2 -fmodulo-sched -fmodulo-sched-allow-regmoves -fdump-rtl-sms" } */
-#include <stdlib.h>
+extern void abort (void);
+__attribute__ ((noinline))
unsigned long long
foo (long long ixi, unsigned ctr)
{
@@ -34,5 +35,7 @@ main ()
return 0;
}
+/* { dg-final { scan-rtl-dump-times "SMS succeeded" 1 "sms" { target powerpc*-*-* } } } */
+/* { dg-final { cleanup-rtl-dump "sms" } } */