]> oss.titaniummirror.com Git - msp430-gcc.git/blobdiff - libgomp/testsuite/libgomp.fortran/pr25162.f
Imported gcc-4.4.3
[msp430-gcc.git] / libgomp / testsuite / libgomp.fortran / pr25162.f
diff --git a/libgomp/testsuite/libgomp.fortran/pr25162.f b/libgomp/testsuite/libgomp.fortran/pr25162.f
new file mode 100644 (file)
index 0000000..a868ea4
--- /dev/null
@@ -0,0 +1,40 @@
+C PR fortran/25162
+C { dg-do run }
+C { dg-require-effective-target tls_runtime }
+      PROGRAM PR25162
+      CALL TEST1
+      CALL TEST2
+      END
+      SUBROUTINE TEST1
+      DOUBLE PRECISION BPRIM
+      COMMON /TESTCOM/ BPRIM(100)
+C$OMP THREADPRIVATE(/TESTCOM/)
+      INTEGER I
+      DO I = 1, 100
+         BPRIM( I ) = DBLE( I )
+      END DO
+      RETURN
+      END
+      SUBROUTINE TEST2
+      DOUBLE PRECISION BPRIM
+      COMMON /TESTCOM/ BPRIM(100)
+C$OMP THREADPRIVATE(/TESTCOM/)
+      INTEGER I, IDUM(50)
+      DO I = 1, 50
+         IDUM(I) = I
+      END DO
+C$OMP PARALLEL COPYIN(/TESTCOM/) NUM_THREADS(4)
+      CALL TEST3
+C$OMP END PARALLEL
+      RETURN
+      END
+      SUBROUTINE TEST3
+      DOUBLE PRECISION BPRIM
+      COMMON /TESTCOM/ BPRIM(100)
+C$OMP THREADPRIVATE(/TESTCOM/)
+      INTEGER K
+      DO K = 1, 10
+         IF (K.NE.BPRIM(K)) CALL ABORT
+      END DO
+      RETURN
+      END