comparison libgomp/testsuite/libgomp.fortran/threadprivate2.f90 @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents a06113de4d67
children 1830386684a0
comparison
equal deleted inserted replaced
111:04ced10e8804 131:84e7813d76e9
51 l = l.or.(baz%b.ne.32) 51 l = l.or.(baz%b.ne.32)
52 baz%a = omp_get_thread_num () * 2 52 baz%a = omp_get_thread_num () * 2
53 baz%b = omp_get_thread_num () * 2 + 1 53 baz%b = omp_get_thread_num () * 2 + 1
54 !$omp end parallel 54 !$omp end parallel
55 55
56 if (l) call abort 56 if (l) STOP 1
57 if (.not.allocated (foo)) call abort 57 if (.not.allocated (foo)) STOP 2
58 if (size (foo).ne.18) call abort 58 if (size (foo).ne.18) STOP 3
59 if (any (foo.ne.1)) call abort 59 if (any (foo.ne.1)) STOP 4
60 60
61 if (associated (bar1)) call abort 61 if (associated (bar1)) STOP 5
62 if (.not.associated (bar3)) call abort 62 if (.not.associated (bar3)) STOP 6
63 if (any (bar3 .ne. -2)) call abort 63 if (any (bar3 .ne. -2)) STOP 7
64 deallocate (bar3) 64 deallocate (bar3)
65 if (associated (bar3)) call abort 65 if (associated (bar3)) STOP 8
66 66
67 !$omp parallel num_threads (4) reduction (.or.:l) 67 !$omp parallel num_threads (4) reduction (.or.:l)
68 l = l.or..not.allocated (foo) 68 l = l.or..not.allocated (foo)
69 l = l.or.size (foo).ne.(18 + 3 * omp_get_thread_num ()) 69 l = l.or.size (foo).ne.(18 + 3 * omp_get_thread_num ())
70 l = l.or.any (foo.ne.(omp_get_thread_num () + 1)) 70 l = l.or.any (foo.ne.(omp_get_thread_num () + 1))
83 83
84 l = l.or.(baz%a.ne.(omp_get_thread_num () * 2)) 84 l = l.or.(baz%a.ne.(omp_get_thread_num () * 2))
85 l = l.or.(baz%b.ne.(omp_get_thread_num () * 2 + 1)) 85 l = l.or.(baz%b.ne.(omp_get_thread_num () * 2 + 1))
86 !$omp end parallel 86 !$omp end parallel
87 87
88 if (l) call abort 88 if (l) STOP 9
89 if (.not.allocated (foo)) call abort 89 if (.not.allocated (foo)) STOP 10
90 if (size (foo).ne.18) call abort 90 if (size (foo).ne.18) STOP 11
91 if (any (foo.ne.1)) call abort 91 if (any (foo.ne.1)) STOP 12
92 deallocate (foo) 92 deallocate (foo)
93 if (allocated (foo)) call abort 93 if (allocated (foo)) STOP 13
94 end 94 end
95 95
96 ! { dg-final { cleanup-modules "threadprivate2" } } 96 ! { dg-final { cleanup-modules "threadprivate2" } }