From 1bc5aee63eb72b341f506ad058502cd0361f0d10 Mon Sep 17 00:00:00 2001 From: Ben Cheng Date: Tue, 25 Mar 2014 22:37:19 -0700 Subject: Initial checkin of GCC 4.9.0 from trunk (r208799). Change-Id: I48a3c08bb98542aa215912a75f03c0890e497dba --- .../libgomp/testsuite/libgomp.fortran/lock-1.f90 | 24 ++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 gcc-4.9/libgomp/testsuite/libgomp.fortran/lock-1.f90 (limited to 'gcc-4.9/libgomp/testsuite/libgomp.fortran/lock-1.f90') diff --git a/gcc-4.9/libgomp/testsuite/libgomp.fortran/lock-1.f90 b/gcc-4.9/libgomp/testsuite/libgomp.fortran/lock-1.f90 new file mode 100644 index 000000000..d7d3e3fd6 --- /dev/null +++ b/gcc-4.9/libgomp/testsuite/libgomp.fortran/lock-1.f90 @@ -0,0 +1,24 @@ +! { dg-do run } + + use omp_lib + + integer (kind = omp_nest_lock_kind) :: lock + logical :: l + + l = .false. + call omp_init_nest_lock (lock) + if (omp_test_nest_lock (lock) .ne. 1) call abort + if (omp_test_nest_lock (lock) .ne. 2) call abort +!$omp parallel if (.false.) reduction (.or.:l) + ! In OpenMP 2.5 this was supposed to return 3, + ! but in OpenMP 3.0 the parallel region has a different + ! task and omp_*_lock_t are owned by tasks, not by threads. + if (omp_test_nest_lock (lock) .ne. 0) l = .true. +!$omp end parallel + if (l) call abort + if (omp_test_nest_lock (lock) .ne. 3) call abort + call omp_unset_nest_lock (lock) + call omp_unset_nest_lock (lock) + call omp_unset_nest_lock (lock) + call omp_destroy_nest_lock (lock) +end -- cgit v1.2.3