re PR c++/85782 (acc loops with continue statements ICE in c++)
PR c++/85782 gcc/cp/ * cp-gimplify.c (cp_genericize_r): Call genericize_omp_for_stmt for OACC_LOOPs. gcc/testsuite/ * c-c++-common/goacc/pr85782.c: New test. libgomp/ * testsuite/libgomp.oacc-c-c++-common/pr85782.c: New test. From-SVN: r260369
This commit is contained in:
parent
a9b22c3309
commit
950ad0bafe
@ -1,3 +1,9 @@
|
||||
2018-05-18 Cesar Philippidis <cesar@codesourcery.com>
|
||||
|
||||
PR c++/85782
|
||||
* cp-gimplify.c (cp_genericize_r): Call genericize_omp_for_stmt for
|
||||
OACC_LOOPs.
|
||||
|
||||
2018-05-18 Richard Sandiford <richard.sandiford@linaro.org>
|
||||
|
||||
* constexpr.c (cxx_eval_constant_expression): Remove FMA_EXPR handling.
|
||||
|
@ -1463,6 +1463,7 @@ cp_genericize_r (tree *stmt_p, int *walk_subtrees, void *data)
|
||||
case OMP_FOR:
|
||||
case OMP_SIMD:
|
||||
case OMP_DISTRIBUTE:
|
||||
case OACC_LOOP:
|
||||
genericize_omp_for_stmt (stmt_p, walk_subtrees, data);
|
||||
break;
|
||||
|
||||
|
@ -1,3 +1,8 @@
|
||||
2018-05-18 Cesar Philippidis <cesar@codesourcery.com>
|
||||
|
||||
PR c++/85782
|
||||
* c-c++-common/goacc/pr85782.c: New test.
|
||||
|
||||
2018-05-18 Sudakshina Das <sudi.das@arm.com>
|
||||
|
||||
* gcc.target/aarch64/sve/slp_5.c: Remove xfail for tld1d and tld2d.
|
||||
|
11
gcc/testsuite/c-c++-common/goacc/pr85782.c
Normal file
11
gcc/testsuite/c-c++-common/goacc/pr85782.c
Normal file
@ -0,0 +1,11 @@
|
||||
/* PR c++/85782 */
|
||||
|
||||
void
|
||||
foo ()
|
||||
{
|
||||
int i;
|
||||
|
||||
#pragma acc parallel loop
|
||||
for (i = 0; i < 100; i++)
|
||||
continue;
|
||||
}
|
@ -1,3 +1,8 @@
|
||||
2018-05-18 Cesar Philippidis <cesar@codesourcery.com>
|
||||
|
||||
PR c++/85782
|
||||
* testsuite/libgomp.oacc-c-c++-common/pr85782.c: New test.
|
||||
|
||||
2018-05-09 Tom de Vries <tom@codesourcery.com>
|
||||
|
||||
PR libgomp/82901
|
||||
|
32
libgomp/testsuite/libgomp.oacc-c-c++-common/pr85782.c
Normal file
32
libgomp/testsuite/libgomp.oacc-c-c++-common/pr85782.c
Normal file
@ -0,0 +1,32 @@
|
||||
/* PR c++/85782 */
|
||||
|
||||
#include <assert.h>
|
||||
|
||||
#define N 100
|
||||
|
||||
int
|
||||
main ()
|
||||
{
|
||||
int i, a[N];
|
||||
|
||||
for (i = 0; i < N; i++)
|
||||
a[i] = i+1;
|
||||
|
||||
#pragma acc parallel loop copy(a)
|
||||
for (i = 0; i < N; i++)
|
||||
{
|
||||
if (i % 2)
|
||||
continue;
|
||||
a[i] = 0;
|
||||
}
|
||||
|
||||
for (i = 0; i < N; i++)
|
||||
{
|
||||
if (i % 2)
|
||||
assert (a[i] == i+1);
|
||||
else
|
||||
assert (a[i] == 0);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
Loading…
Reference in New Issue
Block a user