2
0
mirror of git://gcc.gnu.org/git/gcc.git synced 2025-04-10 03:00:27 +08:00

Add dump file checks for sms tests

From-SVN: r146838
This commit is contained in:
Revital Eres 2009-04-27 12:17:09 +00:00 committed by Revital Eres
parent e97809c61d
commit bd63907522
9 changed files with 55 additions and 9 deletions

@ -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.

@ -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" } } */

@ -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" } } */

@ -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" } } */

@ -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" } } */

@ -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" } } */

@ -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" } } */

@ -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" } } */

@ -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" } } */