From 8050766eaef0077f0af28dab1c0fe6f1aad724bb Mon Sep 17 00:00:00 2001 From: Tom de Vries Date: Thu, 3 Sep 2015 11:01:05 +0000 Subject: [PATCH] Fix gcc_assert in expand_omp_for_static_chunk 2015-09-03 Tom de Vries PR tree-optimization/65637 * omp-low.c (expand_omp_for_static_chunk): Fix gcc_assert for the case that head is NULL. * gcc.dg/autopar/pr46099-2.c: New test. From-SVN: r227436 --- gcc/ChangeLog | 6 ++++++ gcc/omp-low.c | 2 +- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gcc.dg/autopar/pr46099-2.c | 5 +++++ 4 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 gcc/testsuite/gcc.dg/autopar/pr46099-2.c diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 86317e3e165..ae76185f51c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2015-09-03 Tom de Vries + + PR tree-optimization/65637 + * omp-low.c (expand_omp_for_static_chunk): Fix gcc_assert for the case + that head is NULL. + 2015-09-03 Tom de Vries * omp-low.c (expand_omp_for_static_chunk): Handle simple latch bb. diff --git a/gcc/omp-low.c b/gcc/omp-low.c index 16d19220192..0995652c6d3 100644 --- a/gcc/omp-low.c +++ b/gcc/omp-low.c @@ -7326,7 +7326,7 @@ expand_omp_for_static_chunk (struct omp_region *region, locus = redirect_edge_var_map_location (vm); add_phi_arg (nphi, redirect_edge_var_map_def (vm), re, locus); } - gcc_assert (gsi_end_p (psi) && i == head->length ()); + gcc_assert (gsi_end_p (psi) && (head == NULL || i == head->length ())); redirect_edge_var_map_clear (re); while (1) { diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 65ca8c4702e..bfb7dd2dfb6 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2015-09-03 Tom de Vries + + PR tree-optimization/65637 + * gcc.dg/autopar/pr46099-2.c: New test. + 2015-09-03 Naveen H.S PR middle-end/67351 diff --git a/gcc/testsuite/gcc.dg/autopar/pr46099-2.c b/gcc/testsuite/gcc.dg/autopar/pr46099-2.c new file mode 100644 index 00000000000..2883408365e --- /dev/null +++ b/gcc/testsuite/gcc.dg/autopar/pr46099-2.c @@ -0,0 +1,5 @@ +/* PR tree-optimization/46099. */ +/* { dg-do compile } */ +/* { dg-options "-ftree-parallelize-loops=2 -fcompare-debug -O --param parloops-chunk-size=100" } */ + +#include "pr46099.c" -- 2.30.2