aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.4.3/libgomp/testsuite/libgomp.c++/ctor-11.C
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.4.3/libgomp/testsuite/libgomp.c++/ctor-11.C')
-rw-r--r--gcc-4.4.3/libgomp/testsuite/libgomp.c++/ctor-11.C100
1 files changed, 0 insertions, 100 deletions
diff --git a/gcc-4.4.3/libgomp/testsuite/libgomp.c++/ctor-11.C b/gcc-4.4.3/libgomp/testsuite/libgomp.c++/ctor-11.C
deleted file mode 100644
index 8f501e8c8..000000000
--- a/gcc-4.4.3/libgomp/testsuite/libgomp.c++/ctor-11.C
+++ /dev/null
@@ -1,100 +0,0 @@
-// PR c++/36308
-// { dg-do run }
-
-#include <omp.h>
-#include <assert.h>
-
-#define N 10
-
-struct B
-{
- static int icount;
- static int ccount;
- static int dcount;
- static int xcount;
-
- B ();
- B (const B &);
- virtual ~B ();
- B& operator= (const B &);
- void doit ();
- static void clear () { icount = ccount = dcount = xcount = 0; }
-};
-
-int B::icount;
-int B::ccount;
-int B::dcount;
-int B::xcount;
-
-B::B ()
-{
- #pragma omp atomic
- icount++;
-}
-
-B::B (const B &)
-{
- #pragma omp atomic
- ccount++;
-}
-
-B::~B ()
-{
- #pragma omp atomic
- dcount++;
-}
-
-void
-B::doit ()
-{
- #pragma omp atomic
- xcount++;
-}
-
-static int nthreads;
-
-void
-test1 ()
-{
- B b[N];
- #pragma omp parallel private (b)
- {
- #pragma omp master
- nthreads = omp_get_num_threads ();
- b[0].doit ();
- }
-}
-
-void
-test2 ()
-{
- B b;
- #pragma omp parallel firstprivate (b)
- {
- #pragma omp single
- nthreads = omp_get_num_threads ();
- b.doit ();
- }
-}
-
-int
-main ()
-{
- omp_set_dynamic (0);
- omp_set_num_threads (4);
-
- B::clear ();
- test1 ();
- assert (B::xcount == nthreads);
- assert (B::ccount == 0);
- assert (B::icount == (nthreads + 1) * N);
- assert (B::dcount == (nthreads + 1) * N);
-
- B::clear ();
- test2 ();
- assert (B::xcount == nthreads);
- assert (B::ccount == nthreads);
- assert (B::icount == 1);
- assert (B::dcount == nthreads + 1);
- return 0;
-}