aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@codesourcery.com>2016-03-07 13:22:07 +0000
committerNathan Sidwell <nathan@gcc.gnu.org>2016-03-07 13:22:07 +0000
commit4ae13300cd12a603847f1afd152103e0ad48d89a (patch)
tree21235e3760cd5107e9691a937aa0aa60e5756a8c /gcc/testsuite
parent5edb985350a075f467323e37cdb41c84b6127fcf (diff)
downloadgcc-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/ChangeLog6
-rw-r--r--gcc/testsuite/c-c++-common/goacc/pr69916.c20
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;
+}