Add verification to libgomp.graphite/force-parallel-6.c
2015-03-27 Tom de Vries <tom@codesourcery.com> PR testsuite/65594 * testsuite/libgomp.graphite/force-parallel-6.c (abort): Declare. (init, check): New function. (foo): Change return type to void. (main): Call init and check. From-SVN: r221728
This commit is contained in:
parent
4d688c9a17
commit
3e8165a5df
2 changed files with 57 additions and 3 deletions
|
@ -1,3 +1,11 @@
|
|||
2015-03-27 Tom de Vries <tom@codesourcery.com>
|
||||
|
||||
PR testsuite/65594
|
||||
* testsuite/libgomp.graphite/force-parallel-6.c (abort): Declare.
|
||||
(init, check): New function.
|
||||
(foo): Change return type to void.
|
||||
(main): Call init and check.
|
||||
|
||||
2015-03-27 Tom de Vries <tom@codesourcery.com>
|
||||
|
||||
PR testsuite/65594
|
||||
|
|
|
@ -1,10 +1,31 @@
|
|||
void abort (void);
|
||||
|
||||
#define N 500
|
||||
#define M 50
|
||||
|
||||
int X[2*N], Y[2*N], B[2*N];
|
||||
int A[2*N][2*N], C[2*N][2*N];
|
||||
|
||||
int foo(void)
|
||||
static void __attribute__((noinline,noclone))
|
||||
init (void)
|
||||
{
|
||||
volatile int i, j;
|
||||
|
||||
for (i = 0; i < 2 * N; ++i)
|
||||
{
|
||||
B[i] = 1;
|
||||
X[i] = 1;
|
||||
Y[i] = 1;
|
||||
for (j = 0; j < 2 * N; ++j)
|
||||
{
|
||||
A[i][j] = 1;
|
||||
C[i][j] = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void __attribute__((noinline,noclone))
|
||||
foo (void)
|
||||
{
|
||||
int i, j, k;
|
||||
|
||||
|
@ -21,13 +42,38 @@ int foo(void)
|
|||
Y[i+j] = A[j+1][N];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return A[1][5]*B[6];
|
||||
static void __attribute__((noinline,noclone))
|
||||
check (void)
|
||||
{
|
||||
volatile int i, j;
|
||||
|
||||
for (i = 0; i < 2 * N; ++i)
|
||||
{
|
||||
int expect_x = i < M ? 11 : 1;
|
||||
|
||||
if (B[i] != 1
|
||||
|| X[i] != expect_x
|
||||
|| Y[i] != 1)
|
||||
abort ();
|
||||
|
||||
for (j = 0; j < 2 * N; ++j)
|
||||
{
|
||||
int expect_a = (0 < i && i <= M && j < N) ? 2 : 1;
|
||||
|
||||
if (A[i][j] != expect_a
|
||||
|| C[i][j] != 1)
|
||||
abort ();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
int main(void)
|
||||
{
|
||||
foo();
|
||||
init ();
|
||||
foo ();
|
||||
check ();
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue