diff options
author | Jakub Jelinek <jakub@redhat.com> | 2012-02-13 20:57:24 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2012-02-13 20:57:24 +0100 |
commit | 9abd5ed90b85306b6cfea640c9e01e486bbcddb1 (patch) | |
tree | b71a0bc11fe8a3e8f3698eb3255d3403deec905e | |
parent | a905672b22cd3958a91f41e0ec2925bffbba6070 (diff) | |
download | gcc-9abd5ed90b85306b6cfea640c9e01e486bbcddb1.zip gcc-9abd5ed90b85306b6cfea640c9e01e486bbcddb1.tar.gz gcc-9abd5ed90b85306b6cfea640c9e01e486bbcddb1.tar.bz2 |
re PR middle-end/52230 (OpenMP: Simple C program triggers SIGSEGV at execution)
PR middle-end/52230
* omp-low.c (expand_omp_for): If a static schedule without
chunk size has NULL region->cont, force fd.chunk_size to be
integer_zero_node.
From-SVN: r184165
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/omp-low.c | 5 |
2 files changed, 11 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 536933b..89cb0f7 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2012-02-13 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/52230 + * omp-low.c (expand_omp_for): If a static schedule without + chunk size has NULL region->cont, force fd.chunk_size to be + integer_zero_node. + 2012-02-13 Andrew MacLeod <amacleod@redhat.com> PR c/52190 diff --git a/gcc/omp-low.c b/gcc/omp-low.c index 8ab689d..db71594 100644 --- a/gcc/omp-low.c +++ b/gcc/omp-low.c @@ -3,7 +3,7 @@ marshalling to implement data sharing and copying clauses. Contributed by Diego Novillo <dnovillo@redhat.com> - Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011 + Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc. This file is part of GCC. @@ -4664,6 +4664,9 @@ expand_omp_for (struct omp_region *region) { int fn_index, start_ix, next_ix; + if (fd.chunk_size == NULL + && fd.sched_kind == OMP_CLAUSE_SCHEDULE_STATIC) + fd.chunk_size = integer_zero_node; gcc_assert (fd.sched_kind != OMP_CLAUSE_SCHEDULE_AUTO); fn_index = (fd.sched_kind == OMP_CLAUSE_SCHEDULE_RUNTIME) ? 3 : fd.sched_kind; |