aboutsummaryrefslogtreecommitdiff
path: root/libgomp
diff options
context:
space:
mode:
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2015-03-30 17:54:05 +0000
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2015-03-30 17:54:05 +0000
commit8126264b8be7e05fb1ddbeb1df4f29be745f3412 (patch)
treee169c7dce5304cb388868183121b7389a1585e6c /libgomp
parent0ee8956aff96801bf8dd8a4ab7287916c55ea1bf (diff)
PR fortran/65597
* trans-openmp.c (gfc_trans_omp_do): For !simple simd with explicit linear clause for the iterator set OMP_CLAUSE_LINEAR_NO_COPYIN. For implcitly added !simple OMP_CLAUSE_LINEAR set it too. Use step 1 instead of the original step on the new iterator - count. * testsuite/libgomp.fortran/pr65597.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@221776 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libgomp')
-rw-r--r--libgomp/ChangeLog5
-rw-r--r--libgomp/testsuite/libgomp.fortran/pr65597.f9021
2 files changed, 26 insertions, 0 deletions
diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog
index b2e7892b0ef..74a28258e2f 100644
--- a/libgomp/ChangeLog
+++ b/libgomp/ChangeLog
@@ -1,3 +1,8 @@
+2015-03-30 Jakub Jelinek <jakub@redhat.com>
+
+ PR fortran/65597
+ * testsuite/libgomp.fortran/pr65597.f90: New test.
+
2015-03-27 Tom de Vries <tom@codesourcery.com>
PR testsuite/65594
diff --git a/libgomp/testsuite/libgomp.fortran/pr65597.f90 b/libgomp/testsuite/libgomp.fortran/pr65597.f90
new file mode 100644
index 00000000000..c19f077753d
--- /dev/null
+++ b/libgomp/testsuite/libgomp.fortran/pr65597.f90
@@ -0,0 +1,21 @@
+! PR fortran/65597
+! { dg-do run }
+
+ integer :: i, a(151)
+ a(:) = 0
+ !$omp do simd
+ do i = 1, 151, 31
+ a(i) = a(i) + 1
+ end do
+ !$omp do simd linear (i: 31)
+ do i = 1, 151, 31
+ a(i) = a(i) + 1
+ end do
+ do i = 1, 151
+ if (mod (i, 31) .eq. 1) then
+ if (a(i) .ne. 2) call abort
+ else
+ if (a(i) .ne. 0) call abort
+ end if
+ end do
+end