]> oss.titaniummirror.com Git - msp430-gcc.git/blobdiff - libgomp/testsuite/libgomp.c/pr38650.c
Imported gcc-4.4.3
[msp430-gcc.git] / libgomp / testsuite / libgomp.c / pr38650.c
diff --git a/libgomp/testsuite/libgomp.c/pr38650.c b/libgomp/testsuite/libgomp.c/pr38650.c
new file mode 100644 (file)
index 0000000..7066239
--- /dev/null
@@ -0,0 +1,49 @@
+/* PR c++/38650 */
+/* { dg-do run } */
+
+#include <stdlib.h>
+
+int e;
+
+int
+main ()
+{
+  volatile int i, j = 10;
+  e = 0;
+#pragma omp parallel for reduction(+:e)
+  for (i = 0; i < j; i += 1)
+    e++;
+  if (e != 10)
+    abort ();
+  e = 0;
+#pragma omp parallel for reduction(+:e)
+  for (i = 0; i < j; ++i)
+    e++;
+  if (e != 10)
+    abort ();
+  e = 0;
+#pragma omp parallel for reduction(+:e)
+  for (i = 0; i < j; i++)
+    e++;
+  if (e != 10)
+    abort ();
+  e = 0;
+#pragma omp parallel for reduction(+:e)
+  for (i = 0; i < 10; i += 1)
+    e++;
+  if (e != 10)
+    abort ();
+  e = 0;
+#pragma omp parallel for reduction(+:e)
+  for (i = 0; i < 10; ++i)
+    e++;
+  if (e != 10)
+    abort ();
+  e = 0;
+#pragma omp parallel for reduction(+:e)
+  for (i = 0; i < 10; i++)
+    e++;
+  if (e != 10)
+    abort ();
+  return 0;
+}