view libgomp/testsuite/libgomp.oacc-c-c++-common/reduction-6.c @ 138:fc828634a951

merge
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Thu, 08 Nov 2018 14:17:14 +0900
parents 04ced10e8804
children
line wrap: on
line source

/* { dg-do run } */
/* { dg-additional-options "-w" } */

/* Test reductions on explicitly private variables.  */

#include <assert.h>

int
main ()
{
  int i, j, red[10];
  int v;

  for (i = 0; i < 10; i++)
    red[i] = -1;

#pragma acc parallel copyout(red)
  {
#pragma acc loop gang private(v)
    for (j = 0; j < 10; j++)
      {
	v = j;

#pragma acc loop vector reduction (+:v)
	for (i = 0; i < 100; i++)
	  v++;

	red[j] = v;
      }
  }

  for (i = 0; i < 10; i++)
    assert (red[i] == i + 100);

  return 0;
}