Skip to content
Snippets Groups Projects
  • Xi Ruoyao's avatar
    815d9cc6
    re PR c++/80038 (Random segfault using local vectors in Cilk function) · 815d9cc6
    Xi Ruoyao authored
    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
    815d9cc6
    History
    re PR c++/80038 (Random segfault using local vectors in Cilk function)
    Xi Ruoyao authored
    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