[openacc, testsuite] Fix undefined behaviour in atomic_capture-1.c

2018-04-29  Julian Brown  <julian@codesourcery.com>
	    Tom de Vries  <tom@codesourcery.com>

	PR testsuite/85527
	* testsuite/libgomp.oacc-c-c++-common/atomic_capture-1.c: Allow
	arbitrary order for iterations of atomic subtract check.

Co-Authored-By: Tom de Vries <tom@codesourcery.com>

From-SVN: r259748
This commit is contained in:
Julian Brown 2018-04-29 10:26:56 +00:00 committed by Tom de Vries
parent e7d32421aa
commit 8d70b61edd
2 changed files with 16 additions and 10 deletions

View File

@ -1,3 +1,10 @@
2018-04-29 Julian Brown <julian@codesourcery.com>
Tom de Vries <tom@codesourcery.com>
PR testsuite/85527
* testsuite/libgomp.oacc-c-c++-common/atomic_capture-1.c: Allow
arbitrary order for iterations of atomic subtract check.
2018-04-28 Tom de Vries <tom@codesourcery.com>
PR testsuite/85527

View File

@ -795,17 +795,16 @@ main(int argc, char **argv)
}
}
int ones = 0, thirtyones = 0;
for (i = 0; i < N; i++)
if (i % 2 == 0)
{
if (fdata[i] != 31.0)
if (fdata[i] == 31.0)
thirtyones++;
else if (fdata[i] == 1.0)
ones++;
if (ones != N / 2 || thirtyones != N / 2)
abort ();
}
else
{
if (fdata[i] != 1.0)
abort ();
}
/* BINOP = / */