aboutsummaryrefslogtreecommitdiff
path: root/gcc/omp-low.c
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2015-07-10 12:26:19 +0200
committerJakub Jelinek <jakub@gcc.gnu.org>2015-07-10 12:26:19 +0200
commitd26fc9797bd7888d50fb8d09fbe7d258b0236444 (patch)
tree33d774f746d1bcb1f3b9de1fd52df76f9c290001 /gcc/omp-low.c
parente9f4322e78d9f5be3ee2a61ffa9b44f9470f0042 (diff)
downloadgcc-d26fc9797bd7888d50fb8d09fbe7d258b0236444.zip
gcc-d26fc9797bd7888d50fb8d09fbe7d258b0236444.tar.gz
gcc-d26fc9797bd7888d50fb8d09fbe7d258b0236444.tar.bz2
re PR middle-end/66820 (internal compiler error: in get_expr_operands, at tree-ssa-operands.c:910)
PR middle-end/66820 * gimplify.c (maybe_fold_stmt): Don't fold in ORT_PARALLEL or ORT_TASK contexts. * omp-low.c (lower_omp): Call fold_stmt even if taskreg_nesting_level is non-zero. * gcc.dg/gomp/pr66820.c: New test. From-SVN: r225661
Diffstat (limited to 'gcc/omp-low.c')
-rw-r--r--gcc/omp-low.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/omp-low.c b/gcc/omp-low.c
index 2517f18..aa1e666 100644
--- a/gcc/omp-low.c
+++ b/gcc/omp-low.c
@@ -11890,8 +11890,8 @@ lower_omp (gimple_seq *body, omp_context *ctx)
for (gsi = gsi_start (*body); !gsi_end_p (gsi); gsi_next (&gsi))
lower_omp_1 (&gsi, ctx);
/* During gimplification, we haven't folded statments inside offloading
- regions (gimplify.c:maybe_fold_stmt); do that now. */
- if (target_nesting_level)
+ or taskreg regions (gimplify.c:maybe_fold_stmt); do that now. */
+ if (target_nesting_level || taskreg_nesting_level)
for (gsi = gsi_start (*body); !gsi_end_p (gsi); gsi_next (&gsi))
fold_stmt (&gsi);
input_location = saved_location;