aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-cfg.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2017-11-17 13:36:37 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2017-11-17 13:36:37 +0000
commit34705fdc3b33df1e354c907e526761296333e103 (patch)
tree34285f4410f9daa4859939f8013b770975840418 /gcc/tree-cfg.c
parent1ecae1fc238a6b02b3cc2de6a24d73966bc45a03 (diff)
downloadgcc-34705fdc3b33df1e354c907e526761296333e103.zip
gcc-34705fdc3b33df1e354c907e526761296333e103.tar.gz
gcc-34705fdc3b33df1e354c907e526761296333e103.tar.bz2
re PR fortran/83017 (DO CONCURRENT not parallelizing)
2017-11-17 Richard Biener <rguenther@suse.de> PR fortran/83017 * tree-core.h (enum annot_expr_kind): Add annot_expr_parallel_kind. * tree-pretty-print.c (dump_generic_node): Handle annot_expr_parallel_kind. * tree-cfg.c (replace_loop_annotate_in_block): Likewise. * gimplify.c (gimple_boolify): Likewise. fortran/ * trans-stmt.c (gfc_trans_forall_loop): Annotate DO CONCURRENT loops with annot_expr_parallel_kind instead of just annot_expr_ivdep_kind. From-SVN: r254869
Diffstat (limited to 'gcc/tree-cfg.c')
-rw-r--r--gcc/tree-cfg.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c
index 1772185..f448550 100644
--- a/gcc/tree-cfg.c
+++ b/gcc/tree-cfg.c
@@ -287,6 +287,10 @@ replace_loop_annotate_in_block (basic_block bb, struct loop *loop)
loop->force_vectorize = true;
cfun->has_force_vectorize_loops = true;
break;
+ case annot_expr_parallel_kind:
+ loop->can_be_parallel = true;
+ loop->safelen = INT_MAX;
+ break;
default:
gcc_unreachable ();
}