Daily bump.
[official-gcc.git] / libgomp / testsuite / libgomp.c / target-5.c
blob436744359cae0b30882a27c84827a709d62ab814
1 #include <omp.h>
2 #include <stdlib.h>
4 int
5 main ()
7 int d_o = omp_get_dynamic ();
8 int n_o = omp_get_nested ();
9 omp_sched_t s_o;
10 int c_o;
11 omp_get_schedule (&s_o, &c_o);
12 int m_o = omp_get_max_threads ();
13 omp_set_dynamic (1);
14 omp_set_nested (1);
15 omp_set_schedule (omp_sched_static, 2);
16 omp_set_num_threads (4);
17 int d = omp_get_dynamic ();
18 int n = omp_get_nested ();
19 omp_sched_t s;
20 int c;
21 omp_get_schedule (&s, &c);
22 int m = omp_get_max_threads ();
23 if (!omp_is_initial_device ())
24 abort ();
25 #pragma omp target if (0)
27 omp_sched_t s_c;
28 int c_c;
29 omp_get_schedule (&s_c, &c_c);
30 if (d_o != omp_get_dynamic ()
31 || n_o != omp_get_nested ()
32 || s_o != s_c
33 || c_o != c_c
34 || m_o != omp_get_max_threads ())
35 abort ();
36 omp_set_dynamic (0);
37 omp_set_nested (0);
38 omp_set_schedule (omp_sched_dynamic, 4);
39 omp_set_num_threads (2);
40 if (!omp_is_initial_device ())
41 abort ();
43 if (!omp_is_initial_device ())
44 abort ();
45 omp_sched_t s_c;
46 int c_c;
47 omp_get_schedule (&s_c, &c_c);
48 if (d != omp_get_dynamic ()
49 || n != omp_get_nested ()
50 || s != s_c
51 || c != c_c
52 || m != omp_get_max_threads ())
53 abort ();
54 #pragma omp target if (0)
55 #pragma omp teams
57 omp_sched_t s_c;
58 int c_c;
59 omp_get_schedule (&s_c, &c_c);
60 if (d_o != omp_get_dynamic ()
61 || n_o != omp_get_nested ()
62 || s_o != s_c
63 || c_o != c_c
64 || m_o != omp_get_max_threads ())
65 abort ();
66 omp_set_dynamic (0);
67 omp_set_nested (0);
68 omp_set_schedule (omp_sched_dynamic, 4);
69 omp_set_num_threads (2);
70 if (!omp_is_initial_device ())
71 abort ();
73 if (!omp_is_initial_device ())
74 abort ();
75 omp_get_schedule (&s_c, &c_c);
76 if (d != omp_get_dynamic ()
77 || n != omp_get_nested ()
78 || s != s_c
79 || c != c_c
80 || m != omp_get_max_threads ())
81 abort ();
82 return 0;