diff options
author | Nathan Sidwell <nathan@codesourcery.com> | 2016-03-07 13:22:07 +0000 |
---|---|---|
committer | Nathan Sidwell <nathan@gcc.gnu.org> | 2016-03-07 13:22:07 +0000 |
commit | 4ae13300cd12a603847f1afd152103e0ad48d89a (patch) | |
tree | 21235e3760cd5107e9691a937aa0aa60e5756a8c /gcc/testsuite | |
parent | 5edb985350a075f467323e37cdb41c84b6127fcf (diff) | |
download | gcc-4ae13300cd12a603847f1afd152103e0ad48d89a.zip gcc-4ae13300cd12a603847f1afd152103e0ad48d89a.tar.gz gcc-4ae13300cd12a603847f1afd152103e0ad48d89a.tar.bz2 |
re PR middle-end/69916 ([openacc] ICE in single_succ_edge called from oacc_loop_xform_loop)
gcc/
PR middle-end/69916
* omp-low.c (struct oacc_loop): Add ifns.
(new_oacc_loop_raw): Initialize it.
(finish_oacc_loop): Clear mask & flags if no ifns.
(oacc_loop_discover_walk): Count IFN_GOACC_LOOP calls.
(oacc_loop_xform_loop): Add ifns arg & adjust.
(oacc_loop_process): Adjust oacc_loop_xform_loop call.
gcc/testsuite/
PR middle-end/69916
* c-c-++-common/goacc/pr69916.c: New.
From-SVN: r234026
Diffstat (limited to 'gcc/testsuite')
-rw-r--r-- | gcc/testsuite/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/testsuite/c-c++-common/goacc/pr69916.c | 20 |
2 files changed, 25 insertions, 1 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 952bfeb..7d4d342 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2016-03-07 Nathan Sidwell <nathan@codesourcery.com> + + PR middle-end/69916 + * c-c-++-common/goacc/pr69916.c: New. + 2016-03-07 Richard Henderson <rth@redhat.com> * gcc.c-torture/compile/pr70061.c: New test. @@ -711,7 +716,6 @@ PR c/69900 * gcc.dg/pr69900.c: New test. ->>>>>>> .r233653 2016-02-23 Martin Jambor <mjambor@suse.cz> PR tree-optimization/69666 diff --git a/gcc/testsuite/c-c++-common/goacc/pr69916.c b/gcc/testsuite/c-c++-common/goacc/pr69916.c new file mode 100644 index 0000000..e037af3 --- /dev/null +++ b/gcc/testsuite/c-c++-common/goacc/pr69916.c @@ -0,0 +1,20 @@ +/* { dg-additional-options "-O2" } */ + +/* PR 69916, an loop determined to be empty sometime after omp-lower + and before oacc-device-lower can evaporate leading to no GOACC_LOOP + internal functions existing. */ + +int +main (void) +{ + +#pragma acc parallel + { + int j = 0; +#pragma acc loop private (j) + for (int i = 0; i < 10; i++) + j++; + } + + return 0; +} |