From: Tom de Vries Date: Sat, 12 Jan 2019 22:18:39 +0000 (+0000) Subject: [nvptx] Don't emit barriers for empty loops -- test-cases X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=b39e4366a2d561e69d2d529fd4f910374191c8b9;p=gcc.git [nvptx] Don't emit barriers for empty loops -- test-cases Add test-cases for PR85381. 2019-01-12 Tom de Vries PR target/85381 * testsuite/libgomp.oacc-c-c++-common/pr85381-5.c: New test. * testsuite/libgomp.oacc-c-c++-common/pr85381.c: New test. From-SVN: r267893 --- diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog index b785e8ad777..7d56831e36a 100644 --- a/libgomp/ChangeLog +++ b/libgomp/ChangeLog @@ -1,3 +1,9 @@ +2019-01-12 Tom de Vries + + PR target/85381 + * testsuite/libgomp.oacc-c-c++-common/pr85381-5.c: New test. + * testsuite/libgomp.oacc-c-c++-common/pr85381.c: New test. + 2019-01-12 Tom de Vries * testsuite/libgomp.oacc-c-c++-common/vred2d-128.c: New test. diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/pr85381-5.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/pr85381-5.c new file mode 100644 index 00000000000..61e7e48f0c9 --- /dev/null +++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/pr85381-5.c @@ -0,0 +1,24 @@ +/* { dg-additional-options "-save-temps" } */ +/* { dg-do run { target openacc_nvidia_accel_selected } } + { dg-skip-if "" { *-*-* } { "*" } { "-O2" } } */ + +#define n 1024 + +int +main (void) +{ + #pragma acc parallel vector_length(128) + { + #pragma acc loop vector + for (int i = 0; i < n; i++) + ; + + #pragma acc loop vector + for (int i = 0; i < n; i++) + ; + } + + return 0; +} + +/* { dg-final { scan-assembler-not "bar.sync" } } */ diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/pr85381.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/pr85381.c new file mode 100644 index 00000000000..2864dfcf3cb --- /dev/null +++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/pr85381.c @@ -0,0 +1,18 @@ +/* { dg-additional-options "-save-temps" } */ +/* { dg-do run { target openacc_nvidia_accel_selected } } + { dg-skip-if "" { *-*-* } { "*" } { "-O2" } } */ + +int +main (void) +{ + int v1; + + #pragma acc parallel vector_length (128) + #pragma acc loop vector + for (v1 = 0; v1 < 20; v1 += 2) + ; + + return 0; +} + +/* { dg-final { scan-assembler-not "bar.sync" } } */