diff options
Diffstat (limited to 'gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c')
82 files changed, 0 insertions, 4318 deletions
diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.15.1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.15.1.c deleted file mode 100644 index 276ac6caa..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.15.1.c +++ /dev/null @@ -1,44 +0,0 @@ -/* { dg-do run } */ - -#include <stdio.h> - -void -work (int n) -{ - printf ("[%d of %d], nested = %d, n = %d\n", omp_get_thread_num (), omp_get_num_threads(), omp_get_nested (), n); -} - -void -sub3 (int n) -{ - work (n); -#pragma omp barrier - work (n); -} - -void -sub2 (int k) -{ -#pragma omp parallel shared(k) - sub3 (k); -} - -void -sub1 (int n) -{ - int i; -#pragma omp parallel private(i) shared(n) - { -#pragma omp for - for (i = 0; i < n; i++) - sub2 (i); - } -} -int -main () -{ - sub1 (2); - sub2 (15); - sub3 (20); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.16.1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.16.1.c deleted file mode 100644 index 28a994a28..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.16.1.c +++ /dev/null @@ -1,47 +0,0 @@ -/* { dg-do run } */ - -#include <stdio.h> - -float -work1 (int i) -{ - return 1.0 * i; -} - -float -work2 (int i) -{ - return 2.0 * i; -} - -void -a16 (float *x, float *y, int *index, int n) -{ - int i; -#pragma omp parallel for shared(x, y, index, n) - for (i = 0; i < n; i++) - { -#pragma omp atomic - x[index[i]] += work1 (i); - y[i] += work2 (i); - } -} -int -main () -{ - float x[1000]; - float y[10000]; - int index[10000]; - int i; - for (i = 0; i < 10000; i++) - { - index[i] = i % 1000; - y[i] = 0.0; - } - for (i = 0; i < 1000; i++) - x[i] = 0.0; - a16 (x, y, index, 10000); - for (i = 0; i < 10; i++) - printf ("x[%d] = %f, y[%d] = %f\n", i, x[i], i, y[i]); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.18.1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.18.1.c deleted file mode 100644 index 388763e59..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.18.1.c +++ /dev/null @@ -1,67 +0,0 @@ -/* { dg-do run } */ - -#include <omp.h> -#include <stdio.h> - -extern void abort (void); - -#define NUMBER_OF_THREADS 4 - -int synch[NUMBER_OF_THREADS]; -int work[NUMBER_OF_THREADS]; -int result[NUMBER_OF_THREADS]; -int -fn1 (int i) -{ - return i * 2; -} - -int -fn2 (int a, int b) -{ - return a + b; -} - -int -main () -{ - int i, iam, neighbor; - omp_set_num_threads (NUMBER_OF_THREADS); -#pragma omp parallel private(iam,neighbor) shared(work,synch) - { - iam = omp_get_thread_num (); - synch[iam] = 0; -#pragma omp barrier - /*Do computation into my portion of work array */ - work[iam] = fn1 (iam); - /* Announce that I am done with my work. The first flush - * ensures that my work is made visible before synch. - * The second flush ensures that synch is made visible. - */ -#pragma omp flush(work,synch) - synch[iam] = 1; -#pragma omp flush(synch) - /* Wait for neighbor. The first flush ensures that synch is read - * from memory, rather than from the temporary view of memory. - * The second flush ensures that work is read from memory, and - * is done so after the while loop exits. - */ - neighbor = (iam > 0 ? iam : omp_get_num_threads ()) - 1; - while (synch[neighbor] == 0) - { -#pragma omp flush(synch) - } -#pragma omp flush(work,synch) - /* Read neighbor's values of work array */ - result[iam] = fn2 (work[neighbor], work[iam]); - } - /* output result here */ - for (i = 0; i < NUMBER_OF_THREADS; i++) - { - neighbor = (i > 0 ? i : NUMBER_OF_THREADS) - 1; - if (result[i] != i * 2 + neighbor * 2) - abort (); - } - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.19.1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.19.1.c deleted file mode 100644 index 65ffe624c..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.19.1.c +++ /dev/null @@ -1,55 +0,0 @@ -/* { dg-do run } */ - -int x, *p = &x; -extern void abort (void); -void -f1 (int *q) -{ - *q = 1; -#pragma omp flush - /* x, p, and *q are flushed */ - /* because they are shared and accessible */ - /* q is not flushed because it is not shared. */ -} - -void -f2 (int *q) -{ -#pragma omp barrier - *q = 2; -#pragma omp barrier - /* a barrier implies a flush */ - /* x, p, and *q are flushed */ - /* because they are shared and accessible */ - /* q is not flushed because it is not shared. */ -} - -int -g (int n) -{ - int i = 1, j, sum = 0; - *p = 1; -#pragma omp parallel reduction(+: sum) num_threads(2) - { - f1 (&j); - /* i, n and sum were not flushed */ - /* because they were not accessible in f1 */ - /* j was flushed because it was accessible */ - sum += j; - f2 (&j); - /* i, n, and sum were not flushed */ - /* because they were not accessible in f2 */ - /* j was flushed because it was accessible */ - sum += i + j + *p + n; - } - return sum; -} - -int -main () -{ - int result = g (10); - if (result != 30) - abort (); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.2.1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.2.1.c deleted file mode 100644 index f6ae4c7c5..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.2.1.c +++ /dev/null @@ -1,45 +0,0 @@ -/* { dg-do run } */ - -#include <stdio.h> -#include <omp.h> -extern void abort (void); -int -main () -{ - int bad, x; - x = 2; - bad = 0; -#pragma omp parallel num_threads(2) shared(x, bad) - { - if (omp_get_thread_num () == 0) - { - volatile int i; - for (i = 0; i < 100000000; i++) - x = 5; - } - else - { - /* Print 1: the following read of x has a race */ - if (x != 2 && x != 5) - bad = 1; - } -#pragma omp barrier - if (omp_get_thread_num () == 0) - { - /* x must be 5 now. */ - if (x != 5) - bad = 1; - } - else - { - /* x must be 5 now. */ - if (x != 5) - bad = 1; - } - } - - if (bad) - abort (); - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.21.1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.21.1.c deleted file mode 100644 index 0c1c39a12..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.21.1.c +++ /dev/null @@ -1,25 +0,0 @@ -/* { dg-do run } */ - -#include <stdio.h> -void -work (int k) -{ -#pragma omp ordered - printf (" %d\n", k); -} - -void -a21 (int lb, int ub, int stride) -{ - int i; -#pragma omp parallel for ordered schedule(dynamic) - for (i = lb; i < ub; i += stride) - work (i); -} - -int -main () -{ - a21 (0, 100, 5); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.26.1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.26.1.c deleted file mode 100644 index e146fa204..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.26.1.c +++ /dev/null @@ -1,17 +0,0 @@ -/* { dg-do run } */ - -#include <stdio.h> -int -main () -{ - int i, j; - i = 1; - j = 2; -#pragma omp parallel private(i) firstprivate(j) - { - i = 3; - j = j + 2; - } - printf ("%d %d\n", i, j); /* i and j are undefined */ - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.29.1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.29.1.c deleted file mode 100644 index 6f0f65fa0..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.29.1.c +++ /dev/null @@ -1,30 +0,0 @@ -/* { dg-do run } */ - -#include <assert.h> -int A[2][2] = { 1, 2, 3, 4 }; -void -f (int n, int B[n][n], int C[]) -{ - int D[2][2] = { 1, 2, 3, 4 }; - int E[n][n]; - assert (n >= 2); - E[1][1] = 4; -#pragma omp parallel firstprivate(B, C, D, E) - { - assert (sizeof (B) == sizeof (int (*)[n])); - assert (sizeof (C) == sizeof (int *)); - assert (sizeof (D) == 4 * sizeof (int)); - assert (sizeof (E) == n * n * sizeof (int)); - /* Private B and C have values of original B and C. */ - assert (&B[1][1] == &A[1][1]); - assert (&C[3] == &A[1][1]); - assert (D[1][1] == 4); - assert (E[1][1] == 4); - } -} -int -main () -{ - f (2, A, A[0]); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.3.1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.3.1.c deleted file mode 100644 index 9e7c24f75..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.3.1.c +++ /dev/null @@ -1,11 +0,0 @@ -/* { dg-do run } */ - -#include <stdio.h> -int -main () -{ -# ifdef _OPENMP - printf ("Compiled by an OpenMP-compliant implementation.\n"); -# endif - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.33.3.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.33.3.c deleted file mode 100644 index 0b7f0197c..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.33.3.c +++ /dev/null @@ -1,16 +0,0 @@ -/* { dg-do compile } */ - -#include <stdio.h> -#include <stdlib.h> -#include <omp.h> -omp_lock_t * -new_lock () -{ - omp_lock_t *lock_ptr; -#pragma omp single copyprivate(lock_ptr) - { - lock_ptr = (omp_lock_t *) malloc (sizeof (omp_lock_t)); - omp_init_lock (lock_ptr); - } - return lock_ptr; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.36.1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.36.1.c deleted file mode 100644 index b60534d11..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.36.1.c +++ /dev/null @@ -1,31 +0,0 @@ -/* { dg-do run } */ - -#include <omp.h> -#include <stdlib.h> -void -do_by_16 (float *x, int iam, int ipoints) -{ -} - -void -a36 (float *x, int npoints) -{ - int iam, ipoints; - omp_set_dynamic (0); - omp_set_num_threads (16); -#pragma omp parallel shared(x, npoints) private(iam, ipoints) - { - if (omp_get_num_threads () != 16) - abort (); - iam = omp_get_thread_num (); - ipoints = npoints / 16; - do_by_16 (x, iam, ipoints); - } -} - -int main() -{ - float a[10]; - a36 (a, 10); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.39.1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.39.1.c deleted file mode 100644 index a129e87fc..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.39.1.c +++ /dev/null @@ -1,38 +0,0 @@ -/* { dg-do run } */ - -#include <stdio.h> -#include <omp.h> -void -skip (int i) -{ -} - -void -work (int i) -{ -} -int -main () -{ - omp_lock_t lck; - int id; - omp_init_lock (&lck); -#pragma omp parallel shared(lck) private(id) - { - id = omp_get_thread_num (); - omp_set_lock (&lck); - /* only one thread at a time can execute this printf */ - printf ("My thread id is %d.\n", id); - omp_unset_lock (&lck); - while (!omp_test_lock (&lck)) - { - skip (id); /* we do not yet have the lock, - so we must do something else */ - } - work (id); /* we now have the lock - and can do the work */ - omp_unset_lock (&lck); - } - omp_destroy_lock (&lck); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.4.1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.4.1.c deleted file mode 100644 index c6be49090..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.4.1.c +++ /dev/null @@ -1,38 +0,0 @@ -/* { dg-do run } */ - -#include <omp.h> -extern void abort (void); -void -subdomain (float *x, int istart, int ipoints) -{ - int i; - for (i = 0; i < ipoints; i++) - x[istart + i] = 123.456; -} - -void -sub (float *x, int npoints) -{ - int iam, nt, ipoints, istart; -#pragma omp parallel default(shared) private(iam,nt,ipoints,istart) - { - iam = omp_get_thread_num (); - nt = omp_get_num_threads (); - ipoints = npoints / nt; /* size of partition */ - istart = iam * ipoints; /* starting array index */ - if (iam == nt - 1) /* last thread may do more */ - ipoints = npoints - istart; - subdomain (x, istart, ipoints); - } -} -int -main () -{ - int i; - float array[10000]; - sub (array, 10000); - for (i = 0; i < 10000; i++) - if (array[i] < 123.45 || array[i] > 123.46) - abort (); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.40.1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.40.1.c deleted file mode 100644 index aa7b88d70..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.40.1.c +++ /dev/null @@ -1,48 +0,0 @@ -/* { dg-do compile } */ - -#include <omp.h> -typedef struct -{ - int a, b; - omp_nest_lock_t lck; -} pair; -int work1 (); -int work2 (); -int work3 (); -void -incr_a (pair * p, int a) -{ - /* Called only from incr_pair, no need to lock. */ - p->a += a; -} - -void -incr_b (pair * p, int b) -{ - /* Called both from incr_pair and elsewhere, */ - /* so need a nestable lock. */ - omp_set_nest_lock (&p->lck); - p->b += b; - omp_unset_nest_lock (&p->lck); -} - -void -incr_pair (pair * p, int a, int b) -{ - omp_set_nest_lock (&p->lck); - incr_a (p, a); - incr_b (p, b); - omp_unset_nest_lock (&p->lck); -} - -void -a40 (pair * p) -{ -#pragma omp parallel sections - { -#pragma omp section - incr_pair (p, work1 (), work2 ()); -#pragma omp section - incr_b (p, work3 ()); - } -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.5.1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.5.1.c deleted file mode 100644 index b909c4ddb..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/appendix-a/a.5.1.c +++ /dev/null @@ -1,13 +0,0 @@ -/* { dg-do run } */ - -#include <omp.h> -int -main () -{ - omp_set_dynamic (1); -#pragma omp parallel num_threads(10) - { - /* do work here */ - } - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/atomic-1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/atomic-1.c deleted file mode 100644 index 82642a4e4..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/atomic-1.c +++ /dev/null @@ -1,64 +0,0 @@ -/* { dg-do run } */ -/* { dg-options "-O2 -fopenmp" } */ -/* { dg-options "-O2 -fopenmp -march=pentium" { target i?86-*-* x86_64-*-* } } */ -/* { dg-options "-O2 -fopenmp" { target lp64 } } */ - -#ifdef __i386__ -#include "../../../gcc/testsuite/gcc.dg/i386-cpuid.h" -#define bit_CX8 (1 << 8) -#endif - -extern void abort (void); -double d; -struct -{ - int i; - double e; - int j; -} x; - -void -f1 (void) -{ - #pragma omp atomic - d += 7.5; - #pragma omp atomic - d *= 2.5; - #pragma omp atomic - d /= 0.25; -} - -void -f2 (void) -{ - #pragma omp atomic - x.e += 7.5; - #pragma omp atomic - x.e *= 2.5; - #pragma omp atomic - x.e /= 0.25; -} - -int -main (void) -{ -#ifdef __i386__ - unsigned long cpu_facilities; - - cpu_facilities = i386_cpuid (); - - if ((cpu_facilities & bit_CX8) == 0) - return 0; -#endif - - d = 1.0; - f1 (); - if (d != 85.0) - abort (); - - x.e = 1.0; - f2 (); - if (x.i != 0 || x.e != 85.0 || x.j != 0) - abort (); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/atomic-10.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/atomic-10.c deleted file mode 100644 index 6565279b9..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/atomic-10.c +++ /dev/null @@ -1,140 +0,0 @@ -/* { dg-do run } */ -/* { dg-options "-O2 -fopenmp" } */ - -extern void abort (void); -int x1, x2, x3, x4, x5; -volatile int y6 = 9, y2, y3, y4, y5; -volatile unsigned char z1, z2, z3, z4, z5; -float a1, a2, a3, a4; - -void -f1 (void) -{ - #pragma omp atomic - x1++; - #pragma omp atomic - x2--; - #pragma omp atomic - ++x3; - #pragma omp atomic - --x4; - #pragma omp atomic - x5 += 1; - #pragma omp atomic - x1 -= y6; - #pragma omp atomic - x2 |= 1; - #pragma omp atomic - x3 &= 1; - #pragma omp atomic - x4 ^= 1; - #pragma omp atomic - x5 *= 3; - #pragma omp atomic - x1 /= 3; - #pragma omp atomic - x2 /= 3; - #pragma omp atomic - x3 <<= 3; - #pragma omp atomic - x4 >>= 3; -} - -void -f2 (void) -{ - #pragma omp atomic - y6++; - #pragma omp atomic - y2--; - #pragma omp atomic - ++y3; - #pragma omp atomic - --y4; - #pragma omp atomic - y5 += 1; - #pragma omp atomic - y6 -= x1; - #pragma omp atomic - y2 |= 1; - #pragma omp atomic - y3 &= 1; - #pragma omp atomic - y4 ^= 1; - #pragma omp atomic - y5 *= 3; - #pragma omp atomic - y6 /= 3; - #pragma omp atomic - y2 /= 3; - #pragma omp atomic - y3 <<= 3; - #pragma omp atomic - y4 >>= 3; -} - -void -f3 (void) -{ - #pragma omp atomic - z1++; - #pragma omp atomic - z2--; - #pragma omp atomic - ++z3; - #pragma omp atomic - --z4; - #pragma omp atomic - z5 += 1; - #pragma omp atomic - z1 |= 1; - #pragma omp atomic - z2 &= 1; - #pragma omp atomic - z3 ^= 1; - #pragma omp atomic - z4 *= 3; - #pragma omp atomic - z5 /= 3; - #pragma omp atomic - z1 /= 3; - #pragma omp atomic - z2 <<= 3; - #pragma omp atomic - z3 >>= 3; -} - -void -f4 (void) -{ - #pragma omp atomic - a1 += 8.0; - #pragma omp atomic - a2 *= 3.5; - #pragma omp atomic - a3 -= a1 + a2; - #pragma omp atomic - a4 /= 2.0; -} - -int -main (void) -{ - f1 (); - if (x1 != -2 || x2 != 0 || x3 != 8 || x4 != -1 || x5 != 3) - abort (); - f2 (); - if (y6 != 4 || y2 != 0 || y3 != 8 || y4 != -1 || y5 != 3) - abort (); - f3 (); - if (z1 != 0 || z2 != 8 || z3 != 0 || z4 != 253 || z5 != 0) - abort (); - a1 = 7; - a2 = 10; - a3 = 11; - a4 = 13; - f4 (); - if (a1 != 15.0 || a2 != 35.0 || a3 != -39.0 || a4 != 6.5) - abort (); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/atomic-2.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/atomic-2.c deleted file mode 100644 index 6f4939256..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/atomic-2.c +++ /dev/null @@ -1,35 +0,0 @@ -/* { dg-do run } */ -/* { dg-options "-O2 -fopenmp" } */ -/* { dg-options "-O2 -fopenmp -march=nocona" { target i?86-*-* x86_64-*-* } } */ -/* { dg-options "-O2 -fopenmp" { target ilp32 } } */ - -double d = 1.5; -long double ld = 3; -extern void abort (void); - -void -test (void) -{ -#pragma omp atomic - d *= 1.25; -#pragma omp atomic - ld /= 0.75; - if (d != 1.875 || ld != 4.0L) - abort (); -} - -int -main (void) -{ -#ifdef __x86_64__ -# define bit_SSE3 (1 << 0) -# define bit_CX16 (1 << 13) - unsigned int ax, bx, cx, dx; - __asm__ ("cpuid" : "=a" (ax), "=b" (bx), "=c" (cx), "=d" (dx) - : "0" (1) : "cc"); - if ((cx & (bit_SSE3 | bit_CX16)) != (bit_SSE3 | bit_CX16)) - return 0; -#endif - test (); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/barrier-1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/barrier-1.c deleted file mode 100644 index 1f8d1f0d3..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/barrier-1.c +++ /dev/null @@ -1,50 +0,0 @@ -/* Trivial test of barrier. */ - -#include <omp.h> -#include <sys/time.h> -#include <unistd.h> -#include <assert.h> -#include "libgomp_g.h" - - -struct timeval stamps[3][3]; - -static void function(void *dummy) -{ - int iam = omp_get_thread_num (); - - gettimeofday (&stamps[iam][0], NULL); - if (iam == 0) - usleep (10); - - GOMP_barrier (); - - if (iam == 0) - { - gettimeofday (&stamps[0][1], NULL); - usleep (10); - } - - GOMP_barrier (); - - gettimeofday (&stamps[iam][2], NULL); -} - -int main() -{ - omp_set_dynamic (0); - - GOMP_parallel_start (function, NULL, 3); - function (NULL); - GOMP_parallel_end (); - - assert (!timercmp (&stamps[0][0], &stamps[0][1], >)); - assert (!timercmp (&stamps[1][0], &stamps[0][1], >)); - assert (!timercmp (&stamps[2][0], &stamps[0][1], >)); - - assert (!timercmp (&stamps[0][1], &stamps[0][2], >)); - assert (!timercmp (&stamps[0][1], &stamps[1][2], >)); - assert (!timercmp (&stamps[0][1], &stamps[2][2], >)); - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/c.exp b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/c.exp deleted file mode 100644 index d9a5fc330..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/c.exp +++ /dev/null @@ -1,28 +0,0 @@ -# APPLE LOCAL file mainline -if [info exists lang_library_path] then { - unset lang_library_path - unset lang_test_file - unset lang_link_flags -} - -load_lib libgomp-dg.exp - -# If a testcase doesn't have special options, use these. -if ![info exists DEFAULT_CFLAGS] then { - set DEFAULT_CFLAGS "-O2" -} - -# Initialize dg. -dg-init - -# Gather a list of all tests. -set tests [lsort [find $srcdir/$subdir *.c]] - -set ld_library_path $always_ld_library_path -set_ld_library_path_env_vars - -# Main loop. -dg-runtest $tests "" $DEFAULT_CFLAGS - -# All done. -dg-finish diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/copyin-1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/copyin-1.c deleted file mode 100644 index 49c546004..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/copyin-1.c +++ /dev/null @@ -1,34 +0,0 @@ -/* { dg-do run } */ -/* { dg-options "-O2" } */ -/* { dg-require-effective-target tls_runtime } */ - -#include <omp.h> -#include <stdlib.h> - -int thr = 32; -#pragma omp threadprivate (thr) - -int -main (void) -{ - int l = 0; - - omp_set_dynamic (0); - omp_set_num_threads (6); - -#pragma omp parallel copyin (thr) reduction (||:l) - { - l = thr != 32; - thr = omp_get_thread_num () + 11; - } - - if (l || thr != 11) - abort (); - -#pragma omp parallel reduction (||:l) - l = thr != omp_get_thread_num () + 11; - - if (l) - abort (); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/copyin-2.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/copyin-2.c deleted file mode 100644 index ae2451ef1..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/copyin-2.c +++ /dev/null @@ -1,34 +0,0 @@ -/* { dg-do run } */ -/* { dg-options "-O2" } */ -/* { dg-require-effective-target tls_runtime } */ - -#include <omp.h> -#include <stdlib.h> - -struct { int t; char buf[64]; } thr = { 32, "" }; -#pragma omp threadprivate (thr) - -int -main (void) -{ - int l = 0; - - omp_set_dynamic (0); - omp_set_num_threads (6); - -#pragma omp parallel copyin (thr) reduction (||:l) - { - l = thr.t != 32; - thr.t = omp_get_thread_num () + 11; - } - - if (l || thr.t != 11) - abort (); - -#pragma omp parallel reduction (||:l) - l = thr.t != omp_get_thread_num () + 11; - - if (l) - abort (); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/copyin-3.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/copyin-3.c deleted file mode 100644 index 86b0d691f..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/copyin-3.c +++ /dev/null @@ -1,42 +0,0 @@ -/* { dg-do run } */ -/* { dg-options "-O2" } */ -/* { dg-require-effective-target tls_runtime } */ - -#include <omp.h> -#include <stdlib.h> - -int thr; -#pragma omp threadprivate (thr) - -int -test (int l) -{ - return l || (thr != omp_get_thread_num () * 2); -} - -int -main (void) -{ - int l = 0; - - omp_set_dynamic (0); - omp_set_num_threads (6); - - thr = 8; - /* Broadcast the value to all threads. */ -#pragma omp parallel copyin (thr) - ; - -#pragma omp parallel reduction (||:l) - { - /* Now test if the broadcast succeeded. */ - l = thr != 8; - thr = omp_get_thread_num () * 2; -#pragma omp barrier - l = test (l); - } - - if (l) - abort (); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/critical-1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/critical-1.c deleted file mode 100644 index 2b8503be7..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/critical-1.c +++ /dev/null @@ -1,39 +0,0 @@ -/* Trivial test of critical sections. */ - -/* { dg-require-effective-target sync_int_long } */ - -#include <omp.h> -#include <sys/time.h> -#include <unistd.h> -#include <assert.h> -#include "libgomp_g.h" - - -static volatile int test = -1; - -static void function(void *dummy) -{ - int iam = omp_get_thread_num (); - int old; - - GOMP_critical_start (); - - old = __sync_lock_test_and_set (&test, iam); - assert (old == -1); - - usleep (10); - test = -1; - - GOMP_critical_end (); -} - -int main() -{ - omp_set_dynamic (0); - - GOMP_parallel_start (function, NULL, 3); - function (NULL); - GOMP_parallel_end (); - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/critical-2.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/critical-2.c deleted file mode 100644 index 530a891f6..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/critical-2.c +++ /dev/null @@ -1,35 +0,0 @@ -// { dg-do run } -// Test several constructs within a parallel. At one point in development, -// the critical directive clobbered the shared clause of the parallel. - -#include <omp.h> -#include <stdlib.h> - -#define N 2000 - -int main() -{ - int A[N]; - int nthreads; - int i; - -#pragma omp parallel shared (A, nthreads) - { - #pragma omp master - nthreads = omp_get_num_threads (); - - #pragma omp for - for (i = 0; i < N; i++) - A[i] = 0; - - #pragma omp critical - for (i = 0; i < N; i++) - A[i] += 1; - } - - for (i = 0; i < N; i++) - if (A[i] != nthreads) - abort (); - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/lib-1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/lib-1.c deleted file mode 100644 index 4839cf936..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/lib-1.c +++ /dev/null @@ -1,99 +0,0 @@ -#include <stdlib.h> -#include <omp.h> - -int -main (void) -{ - double d, e; - int l; - omp_lock_t lck; - omp_nest_lock_t nlck; - - d = omp_get_wtime (); - - omp_init_lock (&lck); - omp_set_lock (&lck); - if (omp_test_lock (&lck)) - abort (); - omp_unset_lock (&lck); - if (! omp_test_lock (&lck)) - abort (); - if (omp_test_lock (&lck)) - abort (); - omp_unset_lock (&lck); - omp_destroy_lock (&lck); - - omp_init_nest_lock (&nlck); - if (omp_test_nest_lock (&nlck) != 1) - abort (); - omp_set_nest_lock (&nlck); - if (omp_test_nest_lock (&nlck) != 3) - abort (); - omp_unset_nest_lock (&nlck); - omp_unset_nest_lock (&nlck); - if (omp_test_nest_lock (&nlck) != 2) - abort (); - omp_unset_nest_lock (&nlck); - omp_unset_nest_lock (&nlck); - omp_destroy_nest_lock (&nlck); - - omp_set_dynamic (1); - if (! omp_get_dynamic ()) - abort (); - omp_set_dynamic (0); - if (omp_get_dynamic ()) - abort (); - - omp_set_nested (1); - if (! omp_get_nested ()) - abort (); - omp_set_nested (0); - if (omp_get_nested ()) - abort (); - - omp_set_num_threads (5); - if (omp_get_num_threads () != 1) - abort (); - if (omp_get_max_threads () != 5) - abort (); - if (omp_get_thread_num () != 0) - abort (); - omp_set_num_threads (3); - if (omp_get_num_threads () != 1) - abort (); - if (omp_get_max_threads () != 3) - abort (); - if (omp_get_thread_num () != 0) - abort (); - l = 0; -#pragma omp parallel reduction (|:l) - { - l = omp_get_num_threads () != 3; - l |= omp_get_thread_num () < 0; - l |= omp_get_thread_num () >= 3; -#pragma omp master - l |= omp_get_thread_num () != 0; - } - if (l) - abort (); - - if (omp_get_num_procs () <= 0) - abort (); - if (omp_in_parallel ()) - abort (); -#pragma omp parallel reduction (|:l) - l = ! omp_in_parallel (); -#pragma omp parallel reduction (|:l) if (1) - l = ! omp_in_parallel (); - - e = omp_get_wtime (); - if (d > e) - abort (); - d = omp_get_wtick (); - /* Negative precision is definitely wrong, - bigger than 1s clock resolution is also strange. */ - if (d <= 0 || d > 1) - abort (); - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/loop-1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/loop-1.c deleted file mode 100644 index 11348dcfe..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/loop-1.c +++ /dev/null @@ -1,140 +0,0 @@ -/* Test that all loop iterations are touched. This doesn't verify - scheduling order, merely coverage. */ - -/* { dg-require-effective-target sync_int_long } */ - -#include <omp.h> -#include <string.h> -#include <assert.h> -#include "libgomp_g.h" - - -#define N 10000 -static int S, E, INCR, CHUNK, NTHR; -static int data[N]; - -static void clean_data (void) -{ - memset (data, -1, sizeof (data)); -} - -static void test_data (void) -{ - int i, j; - - for (i = 0; i < S; ++i) - assert (data[i] == -1); - - for (j = 0; i < E; ++i, j = (j + 1) % INCR) - if (j == 0) - assert (data[i] != -1); - else - assert (data[i] == -1); - - for (; i < N; ++i) - assert (data[i] == -1); -} - -static void set_data (long i, int val) -{ - int old; - assert (i >= 0 && i < N); - old = __sync_lock_test_and_set (data+i, val); - assert (old == -1); -} - - -#define TMPL_1(sched) \ -static void f_##sched##_1 (void *dummy) \ -{ \ - int iam = omp_get_thread_num (); \ - long s0, e0, i; \ - if (GOMP_loop_##sched##_start (S, E, INCR, CHUNK, &s0, &e0)) \ - do \ - { \ - for (i = s0; i < e0; i += INCR) \ - set_data (i, iam); \ - } \ - while (GOMP_loop_##sched##_next (&s0, &e0)); \ - GOMP_loop_end (); \ -} \ -static void t_##sched##_1 (void) \ -{ \ - clean_data (); \ - GOMP_parallel_start (f_##sched##_1, NULL, NTHR); \ - f_##sched##_1 (NULL); \ - GOMP_parallel_end (); \ - test_data (); \ -} - -TMPL_1(static) -TMPL_1(dynamic) -TMPL_1(guided) - -#define TMPL_2(sched) \ -static void f_##sched##_2 (void *dummy) \ -{ \ - int iam = omp_get_thread_num (); \ - long s0, e0, i; \ - while (GOMP_loop_##sched##_next (&s0, &e0)) \ - { \ - for (i = s0; i < e0; i += INCR) \ - set_data (i, iam); \ - } \ - GOMP_loop_end_nowait (); \ -} \ -static void t_##sched##_2 (void) \ -{ \ - clean_data (); \ - GOMP_parallel_loop_##sched##_start \ - (f_##sched##_2, NULL, NTHR, S, E, INCR, CHUNK); \ - f_##sched##_2 (NULL); \ - GOMP_parallel_end (); \ - test_data (); \ -} - -TMPL_2(static) -TMPL_2(dynamic) -TMPL_2(guided) - -static void test (void) -{ - t_static_1 (); - t_dynamic_1 (); - t_guided_1 (); - t_static_2 (); - t_dynamic_2 (); - t_guided_2 (); -} - -int main() -{ - omp_set_dynamic (0); - - NTHR = 4; - - S = 0, E = N, INCR = 1, CHUNK = 4; - test (); - - S = 0, E = N, INCR = 2, CHUNK = 4; - test (); - - S = 1, E = N-1, INCR = 1, CHUNK = 5; - test (); - - S = 1, E = N-1, INCR = 2, CHUNK = 5; - test (); - - S = 2, E = 4, INCR = 1, CHUNK = 1; - test (); - - S = 0, E = N, INCR = 1, CHUNK = 0; - t_static_1 (); - t_static_2 (); - - S = 1, E = N-1, INCR = 1, CHUNK = 0; - t_static_1 (); - t_static_2 (); - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/loop-2.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/loop-2.c deleted file mode 100644 index 4bae023c7..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/loop-2.c +++ /dev/null @@ -1,114 +0,0 @@ -/* Validate static scheduling iteration dispatch. We only test with - even thread distributions here; there are multiple valid solutions - for uneven thread distributions. */ - -/* { dg-require-effective-target sync_int_long } */ - -#include <omp.h> -#include <string.h> -#include <assert.h> -#include "libgomp_g.h" - - -#define N 360 -static int data[N][2]; -static int INCR, NTHR, CHUNK; - -static void clean_data (void) -{ - memset (data, -1, sizeof (data)); -} - -static void test_data (void) -{ - int n, i, c, thr, iter, chunk; - - chunk = CHUNK; - if (chunk == 0) - chunk = N / INCR / NTHR; - - thr = iter = c = i = 0; - - for (n = 0; n < N; ++n) - { - if (i == 0) - { - assert (data[n][0] == thr); - assert (data[n][1] == iter); - } - else - { - assert (data[n][0] == -1); - assert (data[n][1] == -1); - } - - if (++i == INCR) - { - i = 0; - if (++c == chunk) - { - c = 0; - if (++thr == NTHR) - { - thr = 0; - ++iter; - } - } - } - } -} - -static void set_data (long i, int thr, int iter) -{ - int old; - assert (i >= 0 && i < N); - old = __sync_lock_test_and_set (&data[i][0], thr); - assert (old == -1); - old = __sync_lock_test_and_set (&data[i][1], iter); - assert (old == -1); -} - -static void f_static_1 (void *dummy) -{ - int iam = omp_get_thread_num (); - long s0, e0, i, count = 0; - if (GOMP_loop_static_start (0, N, INCR, CHUNK, &s0, &e0)) - do - { - for (i = s0; i < e0; i += INCR) - set_data (i, iam, count); - ++count; - } - while (GOMP_loop_static_next (&s0, &e0)); - GOMP_loop_end (); -} - -static void test (void) -{ - clean_data (); - GOMP_parallel_start (f_static_1, NULL, NTHR); - f_static_1 (NULL); - GOMP_parallel_end (); - test_data (); -} - -int main() -{ - omp_set_dynamic (0); - - NTHR = 5; - - INCR = 1, CHUNK = 0; /* chunk = 360 / 5 = 72 */ - test (); - - INCR = 4, CHUNK = 0; /* chunk = 360 / 4 / 5 = 18 */ - test (); - - INCR = 1, CHUNK = 4; /* 1 * 4 * 5 = 20 -> 360 / 20 = 18 iterations. */ - test (); - - INCR = 3, CHUNK = 4; /* 3 * 4 * 5 = 60 -> 360 / 60 = 6 iterations. */ - test (); - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/loop-3.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/loop-3.c deleted file mode 100644 index ba3ecdaca..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/loop-3.c +++ /dev/null @@ -1,24 +0,0 @@ -/* { dg-do run } */ - -extern void abort (void); - -volatile int count; -static int test(void) -{ - return ++count > 0; -} - -int main() -{ - int i; - #pragma omp for - for (i = 0; i < 10; ++i) - { - if (test()) - continue; - abort (); - } - if (i != count) - abort (); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/nested-1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/nested-1.c deleted file mode 100644 index d3cfb0100..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/nested-1.c +++ /dev/null @@ -1,30 +0,0 @@ -#include <omp.h> -#include <stdlib.h> - -int -main (void) -{ - int i = -1, j = -1; - - omp_set_nested (1); - omp_set_dynamic (0); -#pragma omp parallel num_threads (4) - { -#pragma omp single - { - i = omp_get_thread_num () + omp_get_num_threads () * 256; -#pragma omp parallel num_threads (2) - { -#pragma omp single - { - j = omp_get_thread_num () + omp_get_num_threads () * 256; - } - } - } - } - if (i < 4 * 256 || i >= 4 * 256 + 4) - abort (); - if (j < 2 * 256 || j >= 2 * 256 + 2) - abort (); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/nested-2.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/nested-2.c deleted file mode 100644 index f52b074ff..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/nested-2.c +++ /dev/null @@ -1,30 +0,0 @@ -#include <omp.h> -#include <stdlib.h> - -int -main (void) -{ - int i = -1, j = -1; - - omp_set_nested (0); - omp_set_dynamic (0); -#pragma omp parallel num_threads (4) - { -#pragma omp single - { - i = omp_get_thread_num () + omp_get_num_threads () * 256; -#pragma omp parallel num_threads (2) - { -#pragma omp single - { - j = omp_get_thread_num () + omp_get_num_threads () * 256; - } - } - } - } - if (i < 4 * 256 || i >= 4 * 256 + 4) - abort (); - if (j != 256 + 0) - abort (); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/nestedfn-1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/nestedfn-1.c deleted file mode 100644 index 26c0d237c..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/nestedfn-1.c +++ /dev/null @@ -1,49 +0,0 @@ -/* { dg-do run } */ - -#include <omp.h> -#include <stdlib.h> - -int -main (void) -{ - int a = 1, b = 2, c = 3; - void - foo (void) - { - int l = 0; -#pragma omp parallel shared (a) private (b) firstprivate (c) \ - num_threads (2) reduction (||:l) - { - if (a != 1 || c != 3) l = 1; -#pragma omp barrier - if (omp_get_thread_num () == 0) - { - a = 4; - b = 5; - c = 6; - } -#pragma omp barrier - if (omp_get_thread_num () == 1) - { - if (a != 4 || c != 3) l = 1; - a = 7; - b = 8; - c = 9; - } - else if (omp_get_num_threads () == 1) - a = 7; -#pragma omp barrier - if (omp_get_thread_num () == 0) - if (a != 7 || b != 5 || c != 6) l = 1; -#pragma omp barrier - if (omp_get_thread_num () == 1) - if (a != 7 || b != 8 || c != 9) l = 1; - } - if (l) - abort (); - } - foo (); - if (a != 7) - abort (); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/nestedfn-2.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/nestedfn-2.c deleted file mode 100644 index fdbbe0f73..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/nestedfn-2.c +++ /dev/null @@ -1,20 +0,0 @@ -/* { dg-do run } */ - -extern void abort (void); - -int -main (void) -{ - int i; - void - foo (void) - { -#pragma omp master - i += 8; - } - i = 4; - foo (); - if (i != 12) - abort (); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/nestedfn-3.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/nestedfn-3.c deleted file mode 100644 index 8f8847f97..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/nestedfn-3.c +++ /dev/null @@ -1,52 +0,0 @@ -/* { dg-do run } */ - -#include <omp.h> - -extern void abort (void); - -int -main (void) -{ - int i = 5, l = 0; - int foo (void) { return i == 6; } - int bar (void) { return i - 3; } - - omp_set_dynamic (0); - -#pragma omp parallel if (foo ()) num_threads (bar ()) reduction (|:l) - if (omp_get_num_threads () != 1) - l = 1; - - i++; - -#pragma omp parallel if (foo ()) num_threads (bar ()) reduction (|:l) - if (omp_get_num_threads () != 3) - l = 1; - - i++; - -#pragma omp master - if (bar () != 4) - abort (); - -#pragma omp single - { - if (foo ()) - abort (); - i--; - if (! foo ()) - abort (); - } - - if (l) - abort (); - - i = 8; -#pragma omp atomic - l += bar (); - - if (l != 5) - abort (); - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/nestedfn-4.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/nestedfn-4.c deleted file mode 100644 index dbe1062bd..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/nestedfn-4.c +++ /dev/null @@ -1,65 +0,0 @@ -/* PR middle-end/25261 */ -/* { dg-do run } */ - -#include <omp.h> - -extern void abort (void); - -int -main (void) -{ - int i = 5, j, l = 0; - int foo (void) - { - return i == 6; - } - int bar (void) - { - return i - 3; - } - - omp_set_dynamic (0); - -#pragma omp parallel if (foo ()) num_threads (2) - if (omp_get_num_threads () != 1) -#pragma omp atomic - l++; - -#pragma omp parallel for schedule (static, bar ()) num_threads (2) \ - reduction (|:l) - for (j = 0; j < 4; j++) - if (omp_get_thread_num () != (j >= 2)) -#pragma omp atomic - l++; - - i++; - -#pragma omp parallel if (foo ()) num_threads (2) - if (omp_get_num_threads () != 2) -#pragma omp atomic - l++; - -#pragma omp parallel for schedule (static, bar ()) num_threads (2) \ - reduction (|:l) - for (j = 0; j < 6; j++) - if (omp_get_thread_num () != (j >= 3)) -#pragma omp atomic - l++; - -#pragma omp parallel num_threads (4) reduction (|:l) - if (!foo () || bar () != 3) -#pragma omp atomic - l++; - - i++; - -#pragma omp parallel num_threads (4) reduction (|:l) - if (foo () || bar () != 4) -#pragma omp atomic - l++; - - if (l) - abort (); - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/nestedfn-5.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/nestedfn-5.c deleted file mode 100644 index 6072b1fe3..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/nestedfn-5.c +++ /dev/null @@ -1,38 +0,0 @@ -/* { dg-do run } */ -/* { dg-options "-O2" } */ - -extern void abort (void); - -void -foo (int *j) -{ - int i = 5; - int bar (void) { return i + 1; } -#pragma omp sections - { - #pragma omp section - { - if (bar () != 6) - #pragma omp atomic - ++*j; - } - #pragma omp section - { - if (bar () != 6) - #pragma omp atomic - ++*j; - } - } -} - -int -main (void) -{ - int j = 0; -#pragma omp parallel num_threads (2) - foo (&j); - if (j) - abort (); - return 0; -} - diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-loop01.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-loop01.c deleted file mode 100644 index 0e83c9583..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-loop01.c +++ /dev/null @@ -1,96 +0,0 @@ -#include <stdlib.h> -#include <stdio.h> -#include <string.h> -#include <omp.h> - -#define MAX 1000 - -void main1() -{ - int i, N1, N2, step; - int a[MAX], b[MAX]; - - N1 = rand () % 13; - N2 = rand () % (MAX - 51) + 50; - step = rand () % 7 + 1; - - printf ("N1 = %d\nN2 = %d\nstep = %d\n", N1, N2, step); - - for (i = N1; i <= N2; i += step) - a[i] = 42+ i; - - /* COUNTING UP (<). Fill in array 'b' in parallel. */ - memset (b, 0, sizeof b); -#pragma omp parallel shared(a,b,N1,N2,step) private(i) - { -#pragma omp for - for (i = N1; i < N2; i += step) - b[i] = a[i]; - } - - /* COUNTING UP (<). Check that all the cells were filled in properly. */ - for (i = N1; i < N2; i += step) - if (a[i] != b[i]) - abort (); - - printf ("for (i = %d; i < %d; i += %d) [OK]\n", N1, N2, step); - - /* COUNTING UP (<=). Fill in array 'b' in parallel. */ - memset (b, 0, sizeof b); -#pragma omp parallel shared(a,b,N1,N2,step) private(i) - { -#pragma omp for - for (i = N1; i <= N2; i += step) - b[i] = a[i]; - } - - /* COUNTING UP (<=). Check that all the cells were filled in properly. */ - for (i = N1; i <= N2; i += step) - if (a[i] != b[i]) - abort (); - - printf ("for (i = %d; i <= %d; i += %d) [OK]\n", N1, N2, step); - - /* COUNTING DOWN (>). Fill in array 'b' in parallel. */ - memset (b, 0, sizeof b); -#pragma omp parallel shared(a,b,N1,N2,step) private(i) - { -#pragma omp for - for (i = N2; i > N1; i -= step) - b[i] = a[i]; - } - - /* COUNTING DOWN (>). Check that all the cells were filled in properly. */ - for (i = N2; i > N1; i -= step) - if (a[i] != b[i]) - abort (); - - printf ("for (i = %d; i > %d; i -= %d) [OK]\n", N2, N1, step); - - /* COUNTING DOWN (>=). Fill in array 'b' in parallel. */ - memset (b, 0, sizeof b); -#pragma omp parallel shared(a,b,N1,N2,step) private(i) - { -#pragma omp for - for (i = N2; i >= N1; i -= step) - b[i] = a[i]; - } - - /* COUNTING DOWN (>=). Check that all the cells were filled in properly. */ - for (i = N2; i >= N1; i -= step) - if (a[i] != b[i]) - abort (); - - printf ("for (i = %d; i >= %d; i -= %d) [OK]\n", N2, N1, step); -} - -int -main () -{ - int i; - - srand (0); - for (i = 0; i < 10; ++i) - main1(); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-loop02.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-loop02.c deleted file mode 100644 index 04aaea2e3..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-loop02.c +++ /dev/null @@ -1,32 +0,0 @@ -#include <omp.h> - -/* Orphaned work sharing. */ - -extern void abort (void); - -#define N 10 - -void parloop (int *a) -{ - int i; - -#pragma omp for - for (i = 0; i < N; i++) - a[i] = i + 3; -} - -main() -{ - int i, a[N]; - -#pragma omp parallel shared(a) - { - parloop (a); - } - - for (i = 0; i < N; i++) - if (a[i] != i + 3) - abort (); - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-loop03.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-loop03.c deleted file mode 100644 index 7bb9a1943..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-loop03.c +++ /dev/null @@ -1,26 +0,0 @@ -extern void abort (void); -int a; - -void -foo () -{ - int i; - a = 30; -#pragma omp barrier -#pragma omp for lastprivate (a) - for (i = 0; i < 1024; i++) - { - a = i; - } - if (a != 1023) - abort (); -} - -int -main (void) -{ -#pragma omp parallel num_threads (64) - foo (); - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-nested-1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-nested-1.c deleted file mode 100644 index 655ef26fa..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-nested-1.c +++ /dev/null @@ -1,28 +0,0 @@ -// { dg-do run } - -extern void abort(void); -#define N 1000 - -int foo() -{ - int i = 0, j; - - #pragma omp parallel for num_threads(2) shared (i) - for (j = 0; j < N; ++j) - { - #pragma omp parallel num_threads(1) shared (i) - { - #pragma omp atomic - i++; - } - } - - return i; -} - -int main() -{ - if (foo() != N) - abort (); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-parallel-for.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-parallel-for.c deleted file mode 100644 index c6631a0a7..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-parallel-for.c +++ /dev/null @@ -1,20 +0,0 @@ -extern void abort (void); - -main() -{ - int i, a; - - a = 30; - -#pragma omp parallel for firstprivate (a) lastprivate (a) \ - num_threads (2) schedule(static) - for (i = 0; i < 10; i++) - a = a + i; - - /* The thread that owns the last iteration will have computed - 30 + 5 + 6 + 7 + 8 + 9 = 65. */ - if (a != 65) - abort (); - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-parallel-if.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-parallel-if.c deleted file mode 100644 index 5e378359a..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-parallel-if.c +++ /dev/null @@ -1,40 +0,0 @@ -#include <omp.h> - -extern void abort (void); - -int -foo (void) -{ - return 10; -} - -main () -{ - int A = 0; - - #pragma omp parallel if (foo () > 10) shared (A) - { - A = omp_get_num_threads (); - } - - if (A != 1) - abort (); - - #pragma omp parallel if (foo () == 10) num_threads (3) shared (A) - { - A = omp_get_num_threads (); - } - - if (A != 3) - abort (); - - #pragma omp parallel if (foo () == 10) num_threads (foo ()) shared (A) - { - A = omp_get_num_threads (); - } - - if (A != 10) - abort (); - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-single-1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-single-1.c deleted file mode 100644 index a44ca54ac..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-single-1.c +++ /dev/null @@ -1,19 +0,0 @@ -extern void abort (void); - -main() -{ - int i = 0; - - #pragma omp parallel shared (i) - { - #pragma omp single - { - i++; - } - } - - if (i != 1) - abort (); - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-single-2.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-single-2.c deleted file mode 100644 index 687855973..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-single-2.c +++ /dev/null @@ -1,38 +0,0 @@ -#include <omp.h> - -extern void abort (void); - -struct X -{ - int a; - char b; - int c; -}; - -main() -{ - int i = 0; - struct X x; - int bad = 0; - - #pragma omp parallel private (i, x) shared (bad) - { - i = 5; - - #pragma omp single copyprivate (i, x) - { - i++; - x.a = 23; - x.b = 42; - x.c = 26; - } - - if (i != 6 || x.a != 23 || x.b != 42 || x.c != 26) - bad = 1; - } - - if (bad) - abort (); - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-single-3.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-single-3.c deleted file mode 100644 index 5a0653244..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp-single-3.c +++ /dev/null @@ -1,21 +0,0 @@ -extern void abort (void); - -void -single (int a, int b) -{ - #pragma omp single copyprivate(a) copyprivate(b) - { - a = b = 5; - } - - if (a != b) - abort (); -} - -int main() -{ - #pragma omp parallel - single (1, 2); - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp_hello.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp_hello.c deleted file mode 100644 index 8d58cd43b..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp_hello.c +++ /dev/null @@ -1,39 +0,0 @@ -/****************************************************************************** -* FILE: omp_hello.c -* DESCRIPTION: -* OpenMP Example - Hello World - C/C++ Version -* In this simple example, the master thread forks a parallel region. -* All threads in the team obtain their unique thread number and print it. -* The master thread only prints the total number of threads. Two OpenMP -* library routines are used to obtain the number of threads and each -* thread's number. -* AUTHOR: Blaise Barney 5/99 -* LAST REVISED: 04/06/05 -******************************************************************************/ -#include <omp.h> -#include <stdio.h> -#include <stdlib.h> - -int main (int argc, char *argv[]) { - -int nthreads, tid; - -/* Fork a team of threads giving them their own copies of variables */ -#pragma omp parallel private(nthreads, tid) - { - - /* Obtain thread number */ - tid = omp_get_thread_num(); - printf("Hello World from thread = %d\n", tid); - - /* Only master thread does this */ - if (tid == 0) - { - nthreads = omp_get_num_threads(); - printf("Number of threads = %d\n", nthreads); - } - - } /* All threads join master thread and disband */ - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp_matvec.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp_matvec.c deleted file mode 100644 index 12b8c6896..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp_matvec.c +++ /dev/null @@ -1,72 +0,0 @@ -/****************************************************************************** -* OpenMP Example - Matrix-vector multiplication - C/C++ Version -* FILE: omp_matvec.c -* DESCRIPTION: -* This example multiplies all row i elements of matrix A with vector -* element b(i) and stores the summed products in vector c(i). A total is -* maintained for the entire matrix. Performed by using the OpenMP loop -* work-sharing construct. The update of the shared global total is -* serialized by using the OpenMP critical directive. -* SOURCE: Blaise Barney 5/99 -* LAST REVISED: -******************************************************************************/ - -#include <omp.h> -#include <stdio.h> -#define SIZE 10 - - -main () -{ - -float A[SIZE][SIZE], b[SIZE], c[SIZE], total; -int i, j, tid; - -/* Initializations */ -total = 0.0; -for (i=0; i < SIZE; i++) - { - for (j=0; j < SIZE; j++) - A[i][j] = (j+1) * 1.0; - b[i] = 1.0 * (i+1); - c[i] = 0.0; - } -printf("\nStarting values of matrix A and vector b:\n"); -for (i=0; i < SIZE; i++) - { - printf(" A[%d]= ",i); - for (j=0; j < SIZE; j++) - printf("%.1f ",A[i][j]); - printf(" b[%d]= %.1f\n",i,b[i]); - } -printf("\nResults by thread/row:\n"); - -/* Create a team of threads and scope variables */ -#pragma omp parallel shared(A,b,c,total) private(tid,i) - { - tid = omp_get_thread_num(); - -/* Loop work-sharing construct - distribute rows of matrix */ -#pragma omp for private(j) - for (i=0; i < SIZE; i++) - { - for (j=0; j < SIZE; j++) - c[i] += (A[i][j] * b[i]); - - /* Update and display of running total must be serialized */ - #pragma omp critical - { - total = total + c[i]; - printf(" thread %d did row %d\t c[%d]=%.2f\t",tid,i,i,c[i]); - printf("Running total= %.2f\n",total); - } - - } /* end of parallel i loop */ - - } /* end of parallel construct */ - -printf("\nMatrix-vector total - sum of all c[] = %.2f\n\n",total); - - return 0; -} - diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp_orphan.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp_orphan.c deleted file mode 100644 index cbf7abf37..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp_orphan.c +++ /dev/null @@ -1,47 +0,0 @@ -/****************************************************************************** -* FILE: omp_orphan.c -* DESCRIPTION: -* OpenMP Example - Parallel region with an orphaned directive - C/C++ Version -* This example demonstrates a dot product being performed by an orphaned -* loop reduction construct. Scoping of the reduction variable is critical. -* AUTHOR: Blaise Barney 5/99 -* LAST REVISED: 04/06/05 -******************************************************************************/ -#include <omp.h> -#include <stdio.h> -#include <stdlib.h> -#define VECLEN 100 - -float a[VECLEN], b[VECLEN], sum; - -float dotprod () -{ -int i,tid; - -tid = omp_get_thread_num(); -#pragma omp for reduction(+:sum) - for (i=0; i < VECLEN; i++) - { - sum = sum + (a[i]*b[i]); - printf(" tid= %d i=%d\n",tid,i); - } - -return(sum); -} - - -int main (int argc, char *argv[]) -{ -int i; - -for (i=0; i < VECLEN; i++) - a[i] = b[i] = 1.0 * i; -sum = 0.0; - -#pragma omp parallel - sum = dotprod(); - -printf("Sum = %f\n",sum); - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp_reduction.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp_reduction.c deleted file mode 100644 index 5c9c41ec7..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp_reduction.c +++ /dev/null @@ -1,35 +0,0 @@ -/****************************************************************************** -* FILE: omp_reduction.c -* DESCRIPTION: -* OpenMP Example - Combined Parallel Loop Reduction - C/C++ Version -* This example demonstrates a sum reduction within a combined parallel loop -* construct. Notice that default data element scoping is assumed - there -* are no clauses specifying shared or private variables. OpenMP will -* automatically make loop index variables private within team threads, and -* global variables shared. -* AUTHOR: Blaise Barney 5/99 -* LAST REVISED: 04/06/05 -******************************************************************************/ -#include <omp.h> -#include <stdio.h> -#include <stdlib.h> - -int main (int argc, char *argv[]) { - -int i, n; -float a[100], b[100], sum; - -/* Some initializations */ -n = 100; -for (i=0; i < n; i++) - a[i] = b[i] = i * 1.0; -sum = 0.0; - -#pragma omp parallel for reduction(+:sum) - for (i=0; i < n; i++) - sum = sum + (a[i] * b[i]); - -printf(" Sum = %f\n",sum); - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp_workshare1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp_workshare1.c deleted file mode 100644 index e33bef316..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp_workshare1.c +++ /dev/null @@ -1,47 +0,0 @@ -/****************************************************************************** -* FILE: omp_workshare1.c -* DESCRIPTION: -* OpenMP Example - Loop Work-sharing - C/C++ Version -* In this example, the iterations of a loop are scheduled dynamically -* across the team of threads. A thread will perform CHUNK iterations -* at a time before being scheduled for the next CHUNK of work. -* AUTHOR: Blaise Barney 5/99 -* LAST REVISED: 04/06/05 -******************************************************************************/ -#include <omp.h> -#include <stdio.h> -#include <stdlib.h> -#define CHUNKSIZE 10 -#define N 100 - -int main (int argc, char *argv[]) { - -int nthreads, tid, i, chunk; -float a[N], b[N], c[N]; - -/* Some initializations */ -for (i=0; i < N; i++) - a[i] = b[i] = i * 1.0; -chunk = CHUNKSIZE; - -#pragma omp parallel shared(a,b,c,nthreads,chunk) private(i,tid) - { - tid = omp_get_thread_num(); - if (tid == 0) - { - nthreads = omp_get_num_threads(); - printf("Number of threads = %d\n", nthreads); - } - printf("Thread %d starting...\n",tid); - - #pragma omp for schedule(dynamic,chunk) - for (i=0; i<N; i++) - { - c[i] = a[i] + b[i]; - printf("Thread %d: c[%d]= %f\n",tid,i,c[i]); - } - - } /* end of parallel section */ - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp_workshare2.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp_workshare2.c deleted file mode 100644 index 32c93dbde..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp_workshare2.c +++ /dev/null @@ -1,64 +0,0 @@ -/****************************************************************************** -* FILE: omp_workshare2.c -* DESCRIPTION: -* OpenMP Example - Sections Work-sharing - C/C++ Version -* In this example, the OpenMP SECTION directive is used to assign -* different array operations to threads that execute a SECTION. Each -* thread receives its own copy of the result array to work with. -* AUTHOR: Blaise Barney 5/99 -* LAST REVISED: 04/06/05 -******************************************************************************/ -#include <omp.h> -#include <stdio.h> -#include <stdlib.h> -#define N 50 - -int main (int argc, char *argv[]) { - -int i, nthreads, tid; -float a[N], b[N], c[N]; - -/* Some initializations */ -for (i=0; i<N; i++) - a[i] = b[i] = i * 1.0; - -#pragma omp parallel shared(a,b,nthreads) private(c,i,tid) - { - tid = omp_get_thread_num(); - if (tid == 0) - { - nthreads = omp_get_num_threads(); - printf("Number of threads = %d\n", nthreads); - } - printf("Thread %d starting...\n",tid); - - #pragma omp sections nowait - { - #pragma omp section - { - printf("Thread %d doing section 1\n",tid); - for (i=0; i<N; i++) - { - c[i] = a[i] + b[i]; - printf("Thread %d: c[%d]= %f\n",tid,i,c[i]); - } - } - - #pragma omp section - { - printf("Thread %d doing section 2\n",tid); - for (i=0; i<N; i++) - { - c[i] = a[i] * b[i]; - printf("Thread %d: c[%d]= %f\n",tid,i,c[i]); - } - } - - } /* end of sections */ - - printf("Thread %d done.\n",tid); - - } /* end of parallel section */ - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp_workshare3.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp_workshare3.c deleted file mode 100644 index 913f1f731..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp_workshare3.c +++ /dev/null @@ -1,43 +0,0 @@ -/* { dg-do compile } */ - -/****************************************************************************** -* OpenMP Example - Combined Parallel Loop Work-sharing - C/C++ Version -* FILE: omp_workshare3.c -* DESCRIPTION: -* This example attempts to show use of the parallel for construct. However -* it will generate errors at compile time. Try to determine what is causing -* the error. See omp_workshare4.c for a corrected version. -* SOURCE: Blaise Barney 5/99 -* LAST REVISED: 03/03/2002 -******************************************************************************/ - -#include <omp.h> -#include <stdio.h> -#define N 50 -#define CHUNKSIZE 5 - -main () { - -int i, chunk, tid; -float a[N], b[N], c[N]; - -/* Some initializations */ -for (i=0; i < N; i++) - a[i] = b[i] = i * 1.0; -chunk = CHUNKSIZE; - -#pragma omp parallel for \ - shared(a,b,c,chunk) \ - private(i,tid) \ - schedule(static,chunk) - { /* { dg-error "expected" } */ - tid = omp_get_thread_num(); - for (i=0; i < N; i++) - { - c[i] = a[i] + b[i]; - printf("tid= %d i= %d c[i]= %f\n", tid, i, c[i]); - } - } /* end of parallel for construct */ - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp_workshare4.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp_workshare4.c deleted file mode 100644 index 67605e38b..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/omp_workshare4.c +++ /dev/null @@ -1,48 +0,0 @@ -/****************************************************************************** -* OpenMP Example - Combined Parallel Loop Work-sharing - C/C++ Version -* FILE: omp_workshare4.c -* DESCRIPTION: -* This is a corrected version of the omp_workshare3.c example. Corrections -* include removing all statements between the parallel for construct and -* the actual for loop, and introducing logic to preserve the ability to -* query a thread's id and print it from inside the for loop. -* SOURCE: Blaise Barney 5/99 -* LAST REVISED: 03/03/2002 -******************************************************************************/ - -#include <omp.h> -#include <stdio.h> -#define N 50 -#define CHUNKSIZE 5 - -main () { - -int i, chunk, tid; -float a[N], b[N], c[N]; -char first_time; - -/* Some initializations */ -for (i=0; i < N; i++) - a[i] = b[i] = i * 1.0; -chunk = CHUNKSIZE; -first_time = 'y'; - -#pragma omp parallel for \ - shared(a,b,c,chunk) \ - private(i,tid) \ - schedule(static,chunk) \ - firstprivate(first_time) - - for (i=0; i < N; i++) - { - if (first_time == 'y') - { - tid = omp_get_thread_num(); - first_time = 'n'; - } - c[i] = a[i] + b[i]; - printf("tid= %d i= %d c[i]= %f\n", tid, i, c[i]); - } - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/ordered-1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/ordered-1.c deleted file mode 100644 index c6143fac2..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/ordered-1.c +++ /dev/null @@ -1,115 +0,0 @@ -/* Test that all loop iterations are touched. This doesn't verify - scheduling order, merely coverage. */ -/* Note that we never call GOMP_ordered_start in here. AFAICS, this is - valid; the only requirement is "not more than once per iteration". */ - -/* { dg-require-effective-target sync_int_long } */ - -#include <omp.h> -#include <string.h> -#include <assert.h> -#include "libgomp_g.h" - - -#define N 1000 -static int S, E, INCR, CHUNK, NTHR; -static int data[N]; - -static void clean_data (void) -{ - memset (data, -1, sizeof (data)); -} - -static void test_data (void) -{ - int i, j; - - for (i = 0; i < S; ++i) - assert (data[i] == -1); - - for (j = 0; i < E; ++i, j = (j + 1) % INCR) - if (j == 0) - assert (data[i] != -1); - else - assert (data[i] == -1); - - for (; i < N; ++i) - assert (data[i] == -1); -} - -static void set_data (long i, int val) -{ - int old; - assert (i >= 0 && i < N); - old = __sync_lock_test_and_set (data+i, val); - assert (old == -1); -} - - -#define TMPL_1(sched) \ -static void f_##sched##_1 (void *dummy) \ -{ \ - int iam = omp_get_thread_num (); \ - long s0, e0, i; \ - if (GOMP_loop_ordered_##sched##_start (S, E, INCR, CHUNK, &s0, &e0)) \ - do \ - { \ - for (i = s0; i < e0; i += INCR) \ - set_data (i, iam); \ - } \ - while (GOMP_loop_ordered_##sched##_next (&s0, &e0)); \ - GOMP_loop_end (); \ -} \ -static void t_##sched##_1 (void) \ -{ \ - clean_data (); \ - GOMP_parallel_start (f_##sched##_1, NULL, NTHR); \ - f_##sched##_1 (NULL); \ - GOMP_parallel_end (); \ - test_data (); \ -} - -TMPL_1(static) -TMPL_1(dynamic) -TMPL_1(guided) - -static void test (void) -{ - t_static_1 (); - t_dynamic_1 (); - t_guided_1 (); -} - -int main() -{ - omp_set_dynamic (0); - - NTHR = 4; - - S = 0, E = N, INCR = 1, CHUNK = 4; - test (); - - S = 0, E = N, INCR = 2, CHUNK = 4; - test (); - - S = 1, E = N-1, INCR = 1, CHUNK = 5; - test (); - - S = 1, E = N-1, INCR = 2, CHUNK = 5; - test (); - - S = 2, E = 4, INCR = 1, CHUNK = 1; - test (); - - S = 0, E = N, INCR = 1, CHUNK = 0; - t_static_1 (); - - S = 1, E = N-1, INCR = 1, CHUNK = 0; - t_static_1 (); - - NTHR = 10; - S = 1, E = 9, INCR = 1, CHUNK = 0; - t_static_1 (); - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/ordered-2.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/ordered-2.c deleted file mode 100644 index 91564371a..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/ordered-2.c +++ /dev/null @@ -1,82 +0,0 @@ -/* Trivial test of ordered. */ - -/* { dg-require-effective-target sync_int_long } */ - -#include <omp.h> -#include <string.h> -#include <assert.h> -#include "libgomp_g.h" - - -#define N 100 -static int next; -static int CHUNK, NTHR; - -static void clean_data (void) -{ - next = 0; -} - -static void set_data (long i) -{ - int n = __sync_fetch_and_add (&next, 1); - assert (n == i); -} - - -#define TMPL_1(sched) \ -static void f_##sched##_1 (void *dummy) \ -{ \ - long s0, e0, i; \ - if (GOMP_loop_ordered_##sched##_start (0, N, 1, CHUNK, &s0, &e0)) \ - do \ - { \ - for (i = s0; i < e0; ++i) \ - { \ - GOMP_ordered_start (); \ - set_data (i); \ - GOMP_ordered_end (); \ - } \ - } \ - while (GOMP_loop_ordered_##sched##_next (&s0, &e0)); \ - GOMP_loop_end (); \ -} \ -static void t_##sched##_1 (void) \ -{ \ - clean_data (); \ - GOMP_parallel_start (f_##sched##_1, NULL, NTHR); \ - f_##sched##_1 (NULL); \ - GOMP_parallel_end (); \ -} - -TMPL_1(static) -TMPL_1(dynamic) -TMPL_1(guided) - -static void test (void) -{ - t_static_1 (); - t_dynamic_1 (); - t_guided_1 (); -} - -int main() -{ - omp_set_dynamic (0); - - NTHR = 4; - - CHUNK = 1; - test (); - - CHUNK = 5; - test (); - - CHUNK = 7; - test (); - - CHUNK = 0; - t_static_1 (); - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/ordered-3.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/ordered-3.c deleted file mode 100644 index 2a2f21970..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/ordered-3.c +++ /dev/null @@ -1,82 +0,0 @@ -#include <stdlib.h> - -int cnt; - -void -check (int x) -{ - if (cnt++ != x) - abort (); -} - -int -main (void) -{ - int j; - - cnt = 0; -#pragma omp parallel for ordered schedule (static, 1) num_threads (4) if (0) - for (j = 0; j < 1000; j++) - { -#pragma omp ordered - check (j); - } - - cnt = 0; -#pragma omp parallel for ordered schedule (static, 1) num_threads (4) if (1) - for (j = 0; j < 1000; j++) - { -#pragma omp ordered - check (j); - } - - cnt = 0; -#pragma omp parallel for ordered schedule (runtime) num_threads (4) if (0) - for (j = 0; j < 1000; j++) - { -#pragma omp ordered - check (j); - } - - cnt = 0; -#pragma omp parallel for ordered schedule (runtime) num_threads (4) if (1) - for (j = 0; j < 1000; j++) - { -#pragma omp ordered - check (j); - } - - cnt = 0; -#pragma omp parallel for ordered schedule (dynamic) num_threads (4) if (0) - for (j = 0; j < 1000; j++) - { -#pragma omp ordered - check (j); - } - - cnt = 0; -#pragma omp parallel for ordered schedule (dynamic) num_threads (4) if (1) - for (j = 0; j < 1000; j++) - { -#pragma omp ordered - check (j); - } - - cnt = 0; -#pragma omp parallel for ordered schedule (guided) num_threads (4) if (0) - for (j = 0; j < 1000; j++) - { -#pragma omp ordered - check (j); - } - - cnt = 0; -#pragma omp parallel for ordered schedule (guided) num_threads (4) if (1) - for (j = 0; j < 1000; j++) - { -#pragma omp ordered - check (j); - } - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/parallel-1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/parallel-1.c deleted file mode 100644 index 031f5bf88..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/parallel-1.c +++ /dev/null @@ -1,48 +0,0 @@ -/* Trivial test of thread startup. */ - -#include <omp.h> -#include <string.h> -#include <assert.h> -#include "libgomp_g.h" - - -static int nthr; -static int saw[4]; - -static void function(void *dummy) -{ - int iam = omp_get_thread_num (); - - if (iam == 0) - nthr = omp_get_num_threads (); - - saw[iam] = 1; -} - -int main() -{ - omp_set_dynamic (0); - - GOMP_parallel_start (function, NULL, 2); - function (NULL); - GOMP_parallel_end (); - - assert (nthr == 2); - assert (saw[0] != 0); - assert (saw[1] != 0); - assert (saw[2] == 0); - - memset (saw, 0, sizeof (saw)); - - GOMP_parallel_start (function, NULL, 3); - function (NULL); - GOMP_parallel_end (); - - assert (nthr == 3); - assert (saw[0] != 0); - assert (saw[1] != 0); - assert (saw[2] != 0); - assert (saw[3] == 0); - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr24455-1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr24455-1.c deleted file mode 100644 index c39068f80..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr24455-1.c +++ /dev/null @@ -1,6 +0,0 @@ -/* { dg-do compile } */ -/* { dg-require-effective-target tls } */ -extern int i; -#pragma omp threadprivate (i) - -int i; diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr24455.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr24455.c deleted file mode 100644 index 8af449e7b..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr24455.c +++ /dev/null @@ -1,23 +0,0 @@ -/* { dg-do run } */ -/* { dg-additional-sources pr24455-1.c } */ -/* { dg-require-effective-target tls_runtime } */ - -extern void abort (void); - -extern int i; -#pragma omp threadprivate(i) - -int main() -{ - i = 0; - -#pragma omp parallel default(none) num_threads(10) - { - i++; -#pragma omp barrier - if (i != 1) - abort (); - } - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr26171.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr26171.c deleted file mode 100644 index eacc9a71d..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr26171.c +++ /dev/null @@ -1,14 +0,0 @@ -/* PR c/26171 */ -/* { dg-do run } */ -/* { dg-options "-fopenmp" } */ -/* { dg-require-effective-target tls_runtime } */ - -int thrv = 0; -#pragma omp threadprivate (thrv) - -int -main () -{ - thrv = 1; - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr26943-1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr26943-1.c deleted file mode 100644 index 86c43f04b..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr26943-1.c +++ /dev/null @@ -1,24 +0,0 @@ -/* PR c++/26943 */ -/* { dg-do run } */ - -extern void abort (void); -extern void omp_set_dynamic (int); -int n = 6; - -int -main (void) -{ - int i, x = 0; - omp_set_dynamic (0); -#pragma omp parallel for num_threads (16) firstprivate (n) lastprivate (n) \ - schedule (static, 1) reduction (+: x) - for (i = 0; i < 16; i++) - { - if (n != 6) - ++x; - n = i; - } - if (x || n != 15) - abort (); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr26943-2.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr26943-2.c deleted file mode 100644 index 778048492..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr26943-2.c +++ /dev/null @@ -1,47 +0,0 @@ -/* PR c++/26943 */ -/* { dg-do run } */ - -extern int omp_set_dynamic (int); -extern void abort (void); - -int a = 8, b = 12, c = 16, d = 20, j = 0; -char e[10] = "a", f[10] = "b", g[10] = "c", h[10] = "d"; - -int -main (void) -{ - int i; - omp_set_dynamic (0); -#pragma omp parallel for shared (a, e) firstprivate (b, f) \ - lastprivate (c, g) private (d, h) \ - schedule (static, 1) num_threads (4) \ - reduction (+:j) - for (i = 0; i < 4; i++) - { - if (a != 8 || b != 12 || e[0] != 'a' || f[0] != 'b') - j++; -#pragma omp barrier -#pragma omp atomic - a += i; - b += i; - c = i; - d = i; -#pragma omp atomic - e[0] += i; - f[0] += i; - g[0] = 'g' + i; - h[0] = 'h' + i; -#pragma omp barrier - if (a != 8 + 6 || b != 12 + i || c != i || d != i) - j += 8; - if (e[0] != 'a' + 6 || f[0] != 'b' + i || g[0] != 'g' + i) - j += 64; - if (h[0] != 'h' + i) - j += 512; - } - if (j || a != 8 + 6 || b != 12 || c != 3 || d != 20) - abort (); - if (e[0] != 'a' + 6 || f[0] != 'b' || g[0] != 'g' + 3 || h[0] != 'd') - abort (); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr26943-3.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr26943-3.c deleted file mode 100644 index be93cb479..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr26943-3.c +++ /dev/null @@ -1,56 +0,0 @@ -/* PR c++/26943 */ -/* { dg-do run } */ - -extern int omp_set_dynamic (int); -extern int omp_get_thread_num (void); -extern void abort (void); - -int a = 8, b = 12, c = 16, d = 20, j = 0, l = 0; -char e[10] = "a", f[10] = "b", g[10] = "c", h[10] = "d"; -volatile int k; - -int -main (void) -{ - int i; - omp_set_dynamic (0); - omp_set_nested (1); -#pragma omp parallel num_threads (2) reduction (+:l) - if (k == omp_get_thread_num ()) - { -#pragma omp parallel for shared (a, e) firstprivate (b, f) \ - lastprivate (c, g) private (d, h) \ - schedule (static, 1) num_threads (4) \ - reduction (+:j) - for (i = 0; i < 4; i++) - { - if (a != 8 || b != 12 || e[0] != 'a' || f[0] != 'b') - j++; -#pragma omp barrier -#pragma omp atomic - a += i; - b += i; - c = i; - d = i; -#pragma omp atomic - e[0] += i; - f[0] += i; - g[0] = 'g' + i; - h[0] = 'h' + i; -#pragma omp barrier - if (a != 8 + 6 || b != 12 + i || c != i || d != i) - j += 8; - if (e[0] != 'a' + 6 || f[0] != 'b' + i || g[0] != 'g' + i) - j += 64; - if (h[0] != 'h' + i) - j += 512; - } - if (j || a != 8 + 6 || b != 12 || c != 3 || d != 20) - ++l; - if (e[0] != 'a' + 6 || f[0] != 'b' || g[0] != 'g' + 3 || h[0] != 'd') - l += 8; - } - if (l) - abort (); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr26943-4.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr26943-4.c deleted file mode 100644 index 33d368583..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr26943-4.c +++ /dev/null @@ -1,61 +0,0 @@ -/* PR c++/26943 */ -/* { dg-do run } */ - -extern int omp_set_dynamic (int); -extern int omp_get_thread_num (void); -extern void abort (void); - -int a = 8, b = 12, c = 16, d = 20, j = 0, l = 0; -char e[10] = "a", f[10] = "b", g[10] = "c", h[10] = "d"; -volatile int k; - -int -main (void) -{ - int i; - omp_set_dynamic (0); - omp_set_nested (1); -#pragma omp parallel num_threads (2) reduction (+:l) \ - firstprivate (a, b, c, d, e, f, g, h, j) - if (k == omp_get_thread_num ()) - { -#pragma omp parallel for shared (a, e) firstprivate (b, f) \ - lastprivate (c, g) private (d, h) \ - schedule (static, 1) num_threads (4) \ - reduction (+:j) - for (i = 0; i < 4; i++) - { - if (a != 8 || b != 12 || e[0] != 'a' || f[0] != 'b') - j++; -#pragma omp barrier -#pragma omp atomic - a += i; - b += i; - c = i; - d = i; -#pragma omp atomic - e[0] += i; - f[0] += i; - g[0] = 'g' + i; - h[0] = 'h' + i; -#pragma omp barrier - if (a != 8 + 6 || b != 12 + i || c != i || d != i) - j += 8; - if (e[0] != 'a' + 6 || f[0] != 'b' + i || g[0] != 'g' + i) - j += 64; - if (h[0] != 'h' + i) - j += 512; - } - if (j || a != 8 + 6 || b != 12 || c != 3 || d != 20) - ++l; - if (e[0] != 'a' + 6 || f[0] != 'b' || g[0] != 'g' + 3 || h[0] != 'd') - l += 8; - } - if (l) - abort (); - if (a != 8 || b != 12 || c != 16 || d != 20) - abort (); - if (e[0] != 'a' || f[0] != 'b' || g[0] != 'c' || h[0] != 'd') - abort (); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr29947-1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr29947-1.c deleted file mode 100644 index 78b40ac5a..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr29947-1.c +++ /dev/null @@ -1,328 +0,0 @@ -/* PR libgomp/29947 */ -/* { dg-options "-O2 -fopenmp" } */ -/* { dg-do run } */ - -extern void abort (void); - -int cnt; - -void -test1 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel reduction (+:e,c) - { -#pragma omp for schedule (dynamic) - for (i = j1; i <= k1; ++i) - { - if (i < j2 || i > k2) - ++e; - ++c; - } -#pragma omp atomic - ++cnt; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test2 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel reduction (+:e,c) - { -#pragma omp for schedule (dynamic) - for (i = k1; i >= j1; --i) - { - if (i < j2 || i > k2) - ++e; - ++c; - } -#pragma omp atomic - ++cnt; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test3 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel reduction (+:e,c) - { -#pragma omp for schedule (guided) - for (i = j1; i <= k1; ++i) - { - if (i < j2 || i > k2) - ++e; - ++c; - } -#pragma omp atomic - ++cnt; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test4 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel reduction (+:e,c) - { -#pragma omp for schedule (guided) - for (i = k1; i >= j1; --i) - { - if (i < j2 || i > k2) - ++e; - ++c; - } -#pragma omp atomic - ++cnt; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test5 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel reduction (+:e,c) - { -#pragma omp for schedule (dynamic) ordered - for (i = j1; i <= k1; ++i) - { - if (i < j2 || i > k2) - ++e; -#pragma omp ordered - ++c; - } -#pragma omp atomic - ++cnt; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test6 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel reduction (+:e,c) - { -#pragma omp for schedule (dynamic) ordered - for (i = k1; i >= j1; --i) - { - if (i < j2 || i > k2) - ++e; -#pragma omp ordered - ++c; - } -#pragma omp atomic - ++cnt; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test7 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel reduction (+:e,c) - { -#pragma omp for schedule (guided) ordered - for (i = j1; i <= k1; ++i) - { - if (i < j2 || i > k2) - ++e; -#pragma omp ordered - ++c; - } -#pragma omp atomic - ++cnt; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test8 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel reduction (+:e,c) - { -#pragma omp for schedule (guided) ordered - for (i = k1; i >= j1; --i) - { - if (i < j2 || i > k2) - ++e; -#pragma omp ordered - ++c; - } -#pragma omp atomic - ++cnt; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test9 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel for reduction (+:e,c) schedule (dynamic) - for (i = j1; i <= k1; ++i) - { - if (i < j2 || i > k2) - ++e; - ++c; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test10 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel for reduction (+:e,c) schedule (dynamic) - for (i = k1; i >= j1; --i) - { - if (i < j2 || i > k2) - ++e; - ++c; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test11 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel for reduction (+:e,c) schedule (guided) - for (i = j1; i <= k1; ++i) - { - if (i < j2 || i > k2) - ++e; - ++c; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test12 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel for reduction (+:e,c) schedule (guided) - for (i = k1; i >= j1; --i) - { - if (i < j2 || i > k2) - ++e; - ++c; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test13 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel for reduction (+:e,c) schedule (dynamic) ordered - for (i = j1; i <= k1; ++i) - { - if (i < j2 || i > k2) - ++e; -#pragma omp ordered - ++c; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test14 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel for reduction (+:e,c) schedule (dynamic) ordered - for (i = k1; i >= j1; --i) - { - if (i < j2 || i > k2) - ++e; -#pragma omp ordered - ++c; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test15 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel for reduction (+:e,c) schedule (guided) ordered - for (i = j1; i <= k1; ++i) - { - if (i < j2 || i > k2) - ++e; -#pragma omp ordered - ++c; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test16 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel for reduction (+:e,c) schedule (guided) ordered - for (i = k1; i >= j1; --i) - { - if (i < j2 || i > k2) - ++e; -#pragma omp ordered - ++c; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -int -__attribute__((noinline)) -test (long j1, long k1, long j2, long k2) -{ - test1 (j1, k1, j2, k2); - test2 (j1, k1, j2, k2); - test3 (j1, k1, j2, k2); - test4 (j1, k1, j2, k2); - test5 (j1, k1, j2, k2); - test6 (j1, k1, j2, k2); - test7 (j1, k1, j2, k2); - test8 (j1, k1, j2, k2); - test9 (j1, k1, j2, k2); - test10 (j1, k1, j2, k2); - test11 (j1, k1, j2, k2); - test12 (j1, k1, j2, k2); - test13 (j1, k1, j2, k2); - test14 (j1, k1, j2, k2); - test15 (j1, k1, j2, k2); - test16 (j1, k1, j2, k2); - return cnt; -} - -int -main (void) -{ - test (1, 5, 1, 5); - test (5, 5, 5, 5); - test (5, 4, 5, 4); - test (5, 1, 5, 1); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr29947-2.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr29947-2.c deleted file mode 100644 index 231cd5d27..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr29947-2.c +++ /dev/null @@ -1,328 +0,0 @@ -/* PR libgomp/29947 */ -/* { dg-options "-O2 -fopenmp" } */ -/* { dg-do run } */ - -extern void abort (void); - -int cnt; - -void -test1 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel reduction (+:e,c) - { -#pragma omp for schedule (static) - for (i = j1; i <= k1; ++i) - { - if (i < j2 || i > k2) - ++e; - ++c; - } -#pragma omp atomic - ++cnt; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test2 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel reduction (+:e,c) - { -#pragma omp for schedule (static) - for (i = k1; i >= j1; --i) - { - if (i < j2 || i > k2) - ++e; - ++c; - } -#pragma omp atomic - ++cnt; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test3 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel reduction (+:e,c) - { -#pragma omp for schedule (static, 1) - for (i = j1; i <= k1; ++i) - { - if (i < j2 || i > k2) - ++e; - ++c; - } -#pragma omp atomic - ++cnt; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test4 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel reduction (+:e,c) - { -#pragma omp for schedule (static, 1) - for (i = k1; i >= j1; --i) - { - if (i < j2 || i > k2) - ++e; - ++c; - } -#pragma omp atomic - ++cnt; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test5 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel reduction (+:e,c) - { -#pragma omp for schedule (static) ordered - for (i = j1; i <= k1; ++i) - { - if (i < j2 || i > k2) - ++e; -#pragma omp ordered - ++c; - } -#pragma omp atomic - ++cnt; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test6 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel reduction (+:e,c) - { -#pragma omp for schedule (static) ordered - for (i = k1; i >= j1; --i) - { - if (i < j2 || i > k2) - ++e; -#pragma omp ordered - ++c; - } -#pragma omp atomic - ++cnt; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test7 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel reduction (+:e,c) - { -#pragma omp for schedule (static, 1) ordered - for (i = j1; i <= k1; ++i) - { - if (i < j2 || i > k2) - ++e; -#pragma omp ordered - ++c; - } -#pragma omp atomic - ++cnt; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test8 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel reduction (+:e,c) - { -#pragma omp for schedule (static, 1) ordered - for (i = k1; i >= j1; --i) - { - if (i < j2 || i > k2) - ++e; -#pragma omp ordered - ++c; - } -#pragma omp atomic - ++cnt; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test9 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel for reduction (+:e,c) schedule (static) - for (i = j1; i <= k1; ++i) - { - if (i < j2 || i > k2) - ++e; - ++c; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test10 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel for reduction (+:e,c) schedule (static) - for (i = k1; i >= j1; --i) - { - if (i < j2 || i > k2) - ++e; - ++c; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test11 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel for reduction (+:e,c) schedule (static, 1) - for (i = j1; i <= k1; ++i) - { - if (i < j2 || i > k2) - ++e; - ++c; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test12 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel for reduction (+:e,c) schedule (static, 1) - for (i = k1; i >= j1; --i) - { - if (i < j2 || i > k2) - ++e; - ++c; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test13 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel for reduction (+:e,c) schedule (static) ordered - for (i = j1; i <= k1; ++i) - { - if (i < j2 || i > k2) - ++e; -#pragma omp ordered - ++c; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test14 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel for reduction (+:e,c) schedule (static) ordered - for (i = k1; i >= j1; --i) - { - if (i < j2 || i > k2) - ++e; -#pragma omp ordered - ++c; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test15 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel for reduction (+:e,c) schedule (static, 1) ordered - for (i = j1; i <= k1; ++i) - { - if (i < j2 || i > k2) - ++e; -#pragma omp ordered - ++c; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -void -test16 (long j1, long k1, long j2, long k2) -{ - long i, e = 0, c = 0; -#pragma omp parallel for reduction (+:e,c) schedule (static, 1) ordered - for (i = k1; i >= j1; --i) - { - if (i < j2 || i > k2) - ++e; -#pragma omp ordered - ++c; - } - if (e || (c != j2 > k2 ? 0 : k2 - j2 + 1)) - abort (); -} - -int -__attribute__((noinline)) -test (long j1, long k1, long j2, long k2) -{ - test1 (j1, k1, j2, k2); - test2 (j1, k1, j2, k2); - test3 (j1, k1, j2, k2); - test4 (j1, k1, j2, k2); - test5 (j1, k1, j2, k2); - test6 (j1, k1, j2, k2); - test7 (j1, k1, j2, k2); - test8 (j1, k1, j2, k2); - test9 (j1, k1, j2, k2); - test10 (j1, k1, j2, k2); - test11 (j1, k1, j2, k2); - test12 (j1, k1, j2, k2); - test13 (j1, k1, j2, k2); - test14 (j1, k1, j2, k2); - test15 (j1, k1, j2, k2); - test16 (j1, k1, j2, k2); - return cnt; -} - -int -main (void) -{ - test (1, 5, 1, 5); - test (5, 5, 5, 5); - test (5, 4, 5, 4); - test (5, 1, 5, 1); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr30494.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr30494.c deleted file mode 100644 index ec6828e44..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr30494.c +++ /dev/null @@ -1,64 +0,0 @@ -/* PR middle-end/30494 */ -/* { dg-do run } */ - -#include <omp.h> - -int errors; - -int -check (int m, int i, int *v, int *w) -{ - int j; - int n = omp_get_thread_num (); - for (j = 0; j < m; j++) - if (v[j] != j + n) - #pragma omp atomic - errors += 1; - for (j = 0; j < m * 3 + i; j++) - if (w[j] != j + 10 + n) - #pragma omp atomic - errors += 1; -} - -int -foo (int n, int m) -{ - int i; -#pragma omp for - for (i = 0; i < 6; i++) - { - int v[n], w[n * 3 + i], j; - for (j = 0; j < n; j++) - v[j] = j + omp_get_thread_num (); - for (j = 0; j < n * 3 + i; j++) - w[j] = j + 10 + omp_get_thread_num (); - check (m, i, v, w); - } - return 0; -} - -int -bar (int n, int m) -{ - int i; -#pragma omp parallel for num_threads (4) - for (i = 0; i < 6; i++) - { - int v[n], w[n * 3 + i], j; - for (j = 0; j < n; j++) - v[j] = j + omp_get_thread_num (); - for (j = 0; j < n * 3 + i; j++) - w[j] = j + 10 + omp_get_thread_num (); - check (m, i, v, w); - } - return 0; -} - -int -main (void) -{ -#pragma omp parallel num_threads (3) - foo (128, 128); - bar (256, 256); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr32362-1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr32362-1.c deleted file mode 100644 index 3c62d4bdb..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr32362-1.c +++ /dev/null @@ -1,32 +0,0 @@ -/* PR middle-end/32362 */ -/* { dg-do run } */ -/* { dg-options "-O2" } */ - -#include <omp.h> -#include <stdlib.h> - -int -main () -{ - int n[4] = { -1, -1, -1, -1 }; - static int a = 2, b = 4; - omp_set_num_threads (4); - omp_set_dynamic (0); - omp_set_nested (1); -#pragma omp parallel private(b) - { - b = omp_get_thread_num (); -#pragma omp parallel firstprivate(a) - { - a = (omp_get_thread_num () + a) + 1; - if (b == omp_get_thread_num ()) - n[omp_get_thread_num ()] = a + (b << 4); - } - } - if (n[0] != 3) - abort (); - if (n[3] != -1 - && (n[1] != 0x14 || n[2] != 0x25 || n[3] != 0x36)) - abort (); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr32362-2.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr32362-2.c deleted file mode 100644 index 43f36e0e9..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr32362-2.c +++ /dev/null @@ -1,33 +0,0 @@ -/* PR middle-end/32362 */ -/* { dg-do run } */ -/* { dg-options "-O2" } */ - -#include <omp.h> -#include <stdlib.h> - -int a = 2, b = 4; - -int -main () -{ - int n[4] = { -1, -1, -1, -1 }; - omp_set_num_threads (4); - omp_set_dynamic (0); - omp_set_nested (1); -#pragma omp parallel private(b) - { - b = omp_get_thread_num (); -#pragma omp parallel firstprivate(a) - { - a = (omp_get_thread_num () + a) + 1; - if (b == omp_get_thread_num ()) - n[omp_get_thread_num ()] = a + (b << 4); - } - } - if (n[0] != 3) - abort (); - if (n[3] != -1 - && (n[1] != 0x14 || n[2] != 0x25 || n[3] != 0x36)) - abort (); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr32362-3.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr32362-3.c deleted file mode 100644 index 09a88f52a..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr32362-3.c +++ /dev/null @@ -1,34 +0,0 @@ -/* PR middle-end/32362 */ -/* { dg-do run } */ -/* { dg-options "-O2" } */ - -#include <omp.h> -#include <stdlib.h> - -int a = 2; - -int -main () -{ - int n[4] = { -1, -1, -1, -1 }; - int b = 4; - omp_set_num_threads (4); - omp_set_dynamic (0); - omp_set_nested (1); -#pragma omp parallel private(b) - { - b = omp_get_thread_num (); -#pragma omp parallel firstprivate(a) - { - a = (omp_get_thread_num () + a) + 1; - if (b == omp_get_thread_num ()) - n[omp_get_thread_num ()] = a + (b << 4); - } - } - if (n[0] != 3) - abort (); - if (n[3] != -1 - && (n[1] != 0x14 || n[2] != 0x25 || n[3] != 0x36)) - abort (); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr32468.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr32468.c deleted file mode 100644 index f20f660bf..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/pr32468.c +++ /dev/null @@ -1,26 +0,0 @@ -/* PR libgomp/32468 */ -/* { dg-do run } */ - -#include <omp.h> -#include <stdlib.h> - -int -main (void) -{ - int res[2] = { -1, -1 }; - omp_set_dynamic (0); - omp_set_num_threads (4); -#pragma omp parallel - { - #pragma omp sections - { - #pragma omp section - res[0] = omp_get_num_threads () != 4; - #pragma omp section - res[1] = omp_get_num_threads () != 4; - } - } - if (res[0] != 0 || res[1] != 0) - abort (); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/reduction-1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/reduction-1.c deleted file mode 100644 index 665163af0..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/reduction-1.c +++ /dev/null @@ -1,36 +0,0 @@ -#include <omp.h> -#include <stdlib.h> - -int -main (void) -{ - int i = 0, j = 0, k = ~0; - double d = 1.0; -#pragma omp parallel num_threads(4) reduction(+:i) reduction(*:d) reduction(&:k) - { - if (i != 0 || d != 1.0 || k != ~0) -#pragma omp atomic - j |= 1; - - if (omp_get_num_threads () != 4) -#pragma omp atomic - j |= 2; - - i = omp_get_thread_num (); - d = i + 1; - k = ~(1 << (2 * i)); - } - - if (j & 1) - abort (); - if ((j & 2) == 0) - { - if (i != (0 + 1 + 2 + 3)) - abort (); - if (d != (1.0 * 2.0 * 3.0 * 4.0)) - abort (); - if (k != (~0 ^ 0x55)) - abort (); - } - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/reduction-2.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/reduction-2.c deleted file mode 100644 index 52b3faff7..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/reduction-2.c +++ /dev/null @@ -1,50 +0,0 @@ -#include <omp.h> -#include <stdlib.h> - -int -main (void) -{ - int i = 0, j = 0, k = ~0, l; - double d = 1.0; -#pragma omp parallel num_threads(4) - { -#pragma omp single - { - i = 16; - k ^= (1 << 16); - d += 32.0; - } - -#pragma omp for reduction(+:i) reduction(*:d) reduction(&:k) - for (l = 0; l < 4; l++) - { - if (omp_get_num_threads () == 4 && (i != 0 || d != 1.0 || k != ~0)) -#pragma omp atomic - j |= 1; - - if (l == omp_get_thread_num ()) - { - i = omp_get_thread_num (); - d = i + 1; - k = ~(1 << (2 * i)); - } - } - - if (omp_get_num_threads () == 4) - { - if (i != (16 + 0 + 1 + 2 + 3)) -#pragma omp atomic - j |= 2; - if (d != (33.0 * 1.0 * 2.0 * 3.0 * 4.0)) -#pragma omp atomic - j |= 4; - if (k != (~0 ^ 0x55 ^ (1 << 16))) -#pragma omp atomic - j |= 8; - } - } - - if (j) - abort (); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/reduction-3.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/reduction-3.c deleted file mode 100644 index 4f8f2fc12..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/reduction-3.c +++ /dev/null @@ -1,51 +0,0 @@ -#include <omp.h> -#include <stdlib.h> - -int -main (void) -{ - int i = 0, j = 0, k = ~0, l; - double d = 1.0; -#pragma omp parallel num_threads(4) - { -#pragma omp single - { - i = 16; - k ^= (1 << 16); - d += 32.0; - } - -#pragma omp for reduction(+:i) reduction(*:d) reduction(&:k) nowait - for (l = 0; l < 4; l++) - { - if (omp_get_num_threads () == 4 && (i != 0 || d != 1.0 || k != ~0)) -#pragma omp atomic - j |= 1; - - if (l == omp_get_thread_num ()) - { - i = omp_get_thread_num (); - d = i + 1; - k = ~(1 << (2 * i)); - } - } - - if (omp_get_num_threads () == 4) - { -#pragma omp barrier - if (i != (16 + 0 + 1 + 2 + 3)) -#pragma omp atomic - j |= 2; - if (d != (33.0 * 1.0 * 2.0 * 3.0 * 4.0)) -#pragma omp atomic - j |= 4; - if (k != (~0 ^ 0x55 ^ (1 << 16))) -#pragma omp atomic - j |= 8; - } - } - - if (j) - abort (); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/reduction-4.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/reduction-4.c deleted file mode 100644 index 23e9d6d5b..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/reduction-4.c +++ /dev/null @@ -1,36 +0,0 @@ -#include <omp.h> -#include <stdlib.h> - -int -main (void) -{ - int i = 0, j = 0, k = 0, l = 0; -#pragma omp parallel num_threads(4) reduction(-:i) reduction(|:k) \ - reduction(^:l) - { - if (i != 0 || k != 0 || l != 0) -#pragma omp atomic - j |= 1; - - if (omp_get_num_threads () != 4) -#pragma omp atomic - j |= 2; - - i = omp_get_thread_num (); - k = 1 << (2 * i); - l = 0xea << (3 * i); - } - - if (j & 1) - abort (); - if ((j & 2) == 0) - { - if (i != (0 + 1 + 2 + 3)) - abort (); - if (k != 0x55) - abort (); - if (l != 0x1e93a) - abort (); - } - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/sections-1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/sections-1.c deleted file mode 100644 index 3a6584cb7..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/sections-1.c +++ /dev/null @@ -1,85 +0,0 @@ -/* Test that all sections are touched. */ - -/* { dg-require-effective-target sync_int_long } */ - -#include <omp.h> -#include <string.h> -#include <assert.h> -#include "libgomp_g.h" - - -#define N 100 -static int data[N]; -static int NTHR; - -static void clean_data (void) -{ - memset (data, -1, sizeof (data)); -} - -static void test_data (void) -{ - int i; - - for (i = 0; i < N; ++i) - assert (data[i] != -1); -} - -static void set_data (unsigned i, int val) -{ - int old; - assert (i >= 1 && i <= N); - old = __sync_lock_test_and_set (data+i-1, val); - assert (old == -1); -} - - -static void f_1 (void *dummy) -{ - int iam = omp_get_thread_num (); - unsigned long s; - - for (s = GOMP_sections_start (N); s ; s = GOMP_sections_next ()) - set_data (s, iam); - GOMP_sections_end (); -} - -static void test_1 (void) -{ - clean_data (); - GOMP_parallel_start (f_1, NULL, NTHR); - f_1 (NULL); - GOMP_parallel_end (); - test_data (); -} - -static void f_2 (void *dummy) -{ - int iam = omp_get_thread_num (); - unsigned s; - - while ((s = GOMP_sections_next ())) - set_data (s, iam); - GOMP_sections_end_nowait (); -} - -static void test_2 (void) -{ - clean_data (); - GOMP_parallel_sections_start (f_2, NULL, NTHR, N); - f_2 (NULL); - GOMP_parallel_end (); - test_data (); -} - -int main() -{ - omp_set_dynamic (0); - - NTHR = 4; - - test_1 (); - test_2 (); - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/shared-1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/shared-1.c deleted file mode 100644 index f7d4fb2d6..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/shared-1.c +++ /dev/null @@ -1,58 +0,0 @@ -extern void abort (void); - -struct Y -{ - int l[5][10]; -}; - -struct X -{ - struct Y y; - float b[10]; -}; - -void -parallel (int a, int b) -{ - int i, j; - struct X A[10][5]; - a = b = 3; - - for (i = 0; i < 10; i++) - for (j = 0; j < 5; j++) - A[i][j].y.l[3][3] = -10; - - #pragma omp parallel shared (a, b, A) num_threads (5) - { - int i, j; - - #pragma omp atomic - a += omp_get_num_threads (); - - #pragma omp atomic - b += omp_get_num_threads (); - - #pragma omp for private (j) - for (i = 0; i < 10; i++) - for (j = 0; j < 5; j++) - A[i][j].y.l[3][3] += 20; - - } - - for (i = 0; i < 10; i++) - for (j = 0; j < 5; j++) - if (A[i][j].y.l[3][3] != 10) - abort (); - - if (a != 28) - abort (); - - if (b != 28) - abort (); -} - -main() -{ - parallel (1, 2); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/shared-2.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/shared-2.c deleted file mode 100644 index 56c88ecc7..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/shared-2.c +++ /dev/null @@ -1,50 +0,0 @@ -#include <stdio.h> -#include <omp.h> - -extern void abort (void); - -void -parallel (int a, int b) -{ - int bad, LASTPRIV, LASTPRIV_SEC; - int i; - - a = b = 3; - - bad = 0; - - #pragma omp parallel firstprivate (a,b) shared (bad) num_threads (5) - { - if (a != 3 || b != 3) - bad = 1; - - #pragma omp for lastprivate (LASTPRIV) - for (i = 0; i < 10; i++) - LASTPRIV = i; - - #pragma omp sections lastprivate (LASTPRIV_SEC) - { - #pragma omp section - { LASTPRIV_SEC = 3; } - - #pragma omp section - { LASTPRIV_SEC = 42; } - } - - } - - if (LASTPRIV != 9) - abort (); - - if (LASTPRIV_SEC != 42) - abort (); - - if (bad) - abort (); -} - -int main() -{ - parallel (1, 2); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/shared-3.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/shared-3.c deleted file mode 100644 index 494a970ad..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/shared-3.c +++ /dev/null @@ -1,19 +0,0 @@ -/* { dg-do run } */ - -void abort (void); - -int main() -{ - int x; - int *p; - - p = &x; - - #pragma omp parallel - { - if (p != &x) - abort (); - } - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/single-1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/single-1.c deleted file mode 100644 index 1ce89118d..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/single-1.c +++ /dev/null @@ -1,53 +0,0 @@ -/* Trivial test of single. */ - -/* { dg-require-effective-target sync_int_long } */ - -#include <omp.h> -#include <sys/time.h> -#include <unistd.h> -#include <assert.h> -#include "libgomp_g.h" - - -static int test; - -static void f_nocopy (void *dummy) -{ - if (GOMP_single_start ()) - { - int iam = omp_get_thread_num (); - int old = __sync_lock_test_and_set (&test, iam); - assert (old == -1); - } -} - -static void f_copy (void *dummy) -{ - int *x = GOMP_single_copy_start (); - if (x == NULL) - { - int iam = omp_get_thread_num (); - int old = __sync_lock_test_and_set (&test, iam); - assert (old == -1); - GOMP_single_copy_end (&test); - } - else - assert (x == &test); -} - -int main() -{ - omp_set_dynamic (0); - - test = -1; - GOMP_parallel_start (f_nocopy, NULL, 3); - f_nocopy (NULL); - GOMP_parallel_end (); - - test = -1; - GOMP_parallel_start (f_copy, NULL, 3); - f_copy (NULL); - GOMP_parallel_end (); - - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/single-2.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/single-2.c deleted file mode 100644 index b510ce735..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/single-2.c +++ /dev/null @@ -1,15 +0,0 @@ -#include <stdlib.h> - -int -main (void) -{ - int i; - i = 4; -#pragma omp single copyprivate (i) - { - i = 6; - } - if (i != 6) - abort (); - return 0; -} diff --git a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/vla-1.c b/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/vla-1.c deleted file mode 100644 index bdacdbbe8..000000000 --- a/gcc-4.2.1-5666.3/libgomp/testsuite/libgomp.c/vla-1.c +++ /dev/null @@ -1,60 +0,0 @@ -/* { dg-do run } */ - -#include <omp.h> -#include <stdlib.h> -#include <string.h> - -int -main (int argc, char **argv[]) -{ - int n = argc < 5 ? 12 : 31, i, m, l; - char a[n + 3]; - unsigned short b[n / 2 - 1]; - int c[n * 2 + 1]; - - for (i = 0; i < n + 3; i++) - a[i] = i; - for (i = 0; i < n / 2 - 1; i++) - b[i] = (i << 8) | i; - for (i = 0; i < n * 2 + 1; i++) - c[i] = (i << 24) | i; - l = 0; - m = n; -#pragma omp parallel default (shared) num_threads (4) \ - firstprivate (a, m) private (b, i) reduction (+:l) - { - for (i = 0; i < m + 3; i++) - if (a[i] != i) - l++; - for (i = 0; i < m * 2 + 1; i++) - if (c[i] != ((i << 24) | i)) - l++; -#pragma omp barrier - memset (a, omp_get_thread_num (), m + 3); - for (i = 0; i < m / 2 - 1; i++) - b[i] = a[0] + 7; -#pragma omp master - { - for (i = 0; i < m * 2 + 1; i++) - c[i] = a[0] + 16; - } -#pragma omp barrier - if (a[0] != omp_get_thread_num ()) - l++; - for (i = 1; i < m + 3; i++) - if (a[i] != a[0]) - l++; - for (i = 0; i < m / 2 - 1; i++) - if (b[i] != a[0] + 7) - l++; - for (i = 0; i < m * 2 + 1; i++) - if (c[i] != 16) - l++; - } - if (l) - abort (); - for (i = 0; i < n * 2 + 1; i++) - if (c[i] != 16) - l++; - return 0; -} |