]> oss.titaniummirror.com Git - msp430-gcc.git/blobdiff - libgomp/testsuite/libgomp.fortran/omp_reduction.f
Imported gcc-4.4.3
[msp430-gcc.git] / libgomp / testsuite / libgomp.fortran / omp_reduction.f
diff --git a/libgomp/testsuite/libgomp.fortran/omp_reduction.f b/libgomp/testsuite/libgomp.fortran/omp_reduction.f
new file mode 100644 (file)
index 0000000..0560bd8
--- /dev/null
@@ -0,0 +1,33 @@
+C******************************************************************************
+C FILE: omp_reduction.f
+C DESCRIPTION:
+C   OpenMP Example - Combined Parallel Loop Reduction - Fortran Version
+C   This example demonstrates a sum reduction within a combined parallel loop
+C   construct.  Notice that default data element scoping is assumed - there
+C   are no clauses specifying shared or private variables.  OpenMP will
+C   automatically make loop index variables private within team threads, and
+C   global variables shared.
+C AUTHOR: Blaise Barney  5/99
+C LAST REVISED:
+C******************************************************************************
+
+      PROGRAM REDUCTION
+
+      INTEGER I, N
+      REAL A(100), B(100), SUM
+
+!     Some initializations
+      N = 100
+      DO I = 1, N
+        A(I) = I *1.0
+        B(I) = A(I)
+      ENDDO
+      SUM = 0.0
+
+!$OMP PARALLEL DO REDUCTION(+:SUM)
+      DO I = 1, N
+        SUM = SUM + (A(I) * B(I))
+      ENDDO
+
+      PRINT *, '   Sum = ', SUM
+      END