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 /gcc/omp-low.c | |
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
Diffstat (limited to 'gcc/omp-low.c')
-rw-r--r-- | gcc/omp-low.c | 5 |
1 files changed, 4 insertions, 1 deletions
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; |