-
- Downloads
re PR c++/80038 (Random segfault using local vectors in Cilk function)
2017-05-01 Xi Ruoyao <ryxi@stu.xidian.edu.cn> PR c++/80038 * cilk_common.c (expand_builtin_cilk_detach): Move pedigree operations here. * gimplify.c (gimplify_cilk_detach): New function. (gimplify_call_expr, gimplify_modify_expr): Call it as needed. * tree-core.h: Document EXPR_CILK_SPAWN. * tree.h (EXPR_CILK_SPAWN): Define. PR c++/80038 * c-common.h (cilk_gimplify_call_params_in_spawned_fn): Remove prototype. (cilk_install_body_pedigree_operations): Likewise. * cilk.c (cilk_set_spawn_marker): Mark functions that should be detatched. (cilk_gimplify_call_params_in_spawned_fn): Remove. (cilk_install_body_pedigree_operations): Likewise. (gimplify_cilk_spawn): Add EXPR_STMT and CLEANUP_POINT_EXPR unwrapping. PR c++/80038 * c-gimplify.c (c_gimplify_expr): Remove calls to cilk_gimplifY_call_params_in_spawned_fn. PR c++/80038 * cp-cilkplus.c (cilk_install_body_with_frame_cleanup): Don't add pedigree operation and detach call here. * cp-gimplify.c (cp_gimplify_expr): Remove the calls to cilk_cp_gimplify_call_params_in_spawned_fn. (cilk_cp_gimplify_call_params_in_spawned_fn): Remove function. * semantics.c (simplify_aggr_init_expr): Copy EXPR_CILK_SPAWN. PR c++/80038 * lto-lang.c (lto_init): Set in_lto_p earlier. PR c++/80038 * g++.dg/cilk-plus/CK/pr80038.cc: New test. From-SVN: r247446
Showing
- gcc/ChangeLog 10 additions, 0 deletionsgcc/ChangeLog
- gcc/c-family/ChangeLog 13 additions, 0 deletionsgcc/c-family/ChangeLog
- gcc/c-family/c-common.h 0 additions, 2 deletionsgcc/c-family/c-common.h
- gcc/c-family/c-gimplify.c 2 additions, 8 deletionsgcc/c-family/c-gimplify.c
- gcc/c-family/cilk.c 10 additions, 92 deletionsgcc/c-family/cilk.c
- gcc/c/ChangeLog 6 additions, 0 deletionsgcc/c/ChangeLog
- gcc/c/c-typeck.c 1 addition, 7 deletionsgcc/c/c-typeck.c
- gcc/cilk-common.c 49 additions, 0 deletionsgcc/cilk-common.c
- gcc/cp/ChangeLog 10 additions, 0 deletionsgcc/cp/ChangeLog
- gcc/cp/cp-cilkplus.c 1 addition, 5 deletionsgcc/cp/cp-cilkplus.c
- gcc/cp/cp-gimplify.c 4 additions, 36 deletionsgcc/cp/cp-gimplify.c
- gcc/cp/semantics.c 2 additions, 0 deletionsgcc/cp/semantics.c
- gcc/gimplify.c 21 additions, 0 deletionsgcc/gimplify.c
- gcc/lto/ChangeLog 5 additions, 0 deletionsgcc/lto/ChangeLog
- gcc/lto/lto-lang.c 3 additions, 3 deletionsgcc/lto/lto-lang.c
- gcc/testsuite/ChangeLog 5 additions, 0 deletionsgcc/testsuite/ChangeLog
- gcc/testsuite/g++.dg/cilk-plus/CK/pr80038.cc 47 additions, 0 deletionsgcc/testsuite/g++.dg/cilk-plus/CK/pr80038.cc
- gcc/tree-core.h 4 additions, 0 deletionsgcc/tree-core.h
- gcc/tree.h 6 additions, 0 deletionsgcc/tree.h
Loading
Please register or sign in to comment