libstdc++: Implement LWG 3798 for range adaptors [PR106676]
[official-gcc.git] / libgomp / testsuite / libgomp.c / target-44.c
bloba5da81d7e2373d3f91e274202b430c079a2e89c1
1 /* { dg-additional-options "-foffload-options=nvptx-none=-latomic" { target { offload_target_nvptx } } } */
3 #include <stdlib.h>
5 struct s
7 int i;
8 };
10 #pragma omp declare reduction(+: struct s: omp_out.i += omp_in.i)
12 int
13 main (void)
15 const int N0 = 32768;
17 struct s counter_N0 = { 0 };
18 #pragma omp target
19 #pragma omp for simd reduction(+: counter_N0)
20 for (int i0 = 0 ; i0 < N0 ; i0++ )
21 counter_N0.i += 1;
23 if (counter_N0.i != N0)
24 abort ();
26 return 0;