re PR c++/69267 ([cilkplus] ICE when calling a function with an empty class as an argument)
2016-01-15 Ryan Burn <contact@rnburn.com> PR cilkplus/69267 * cilk.c (cilk_gimplify_call_params_in_spawned_fn): Change to use gimplify_arg. Removed superfluous post_p argument. * c-family.h (cilk_gimplify_call_params_in_spawned_fn): Removed superfluous post_p argument. * c-gimplify.c (c_gimplify_expr): Likewise. gcc/cp/ChangeLog: 2016-01-15 Ryan Burn <contact@rnburn.com> PR cilkplus/69267 * cp-gimplify.c (cilk_cp_gimplify_call_params_in_spawned_fn): Removed superfluous post_p argument in call to cilk_gimplify_call_params_in_spawned_fn. gcc/testsuite/ChangeLog: 2016-01-15 Ryan Burn <contact@rnburn.com> PR cilkplus/69267 * g++.dg/cilk-plus/CK/pr69267.cc: New test. From-SVN: r232887
This commit is contained in:
parent
87ff4d664c
commit
5d70666e4c
@ -1,3 +1,12 @@
|
||||
2016-01-27 Ryan Burn <contact@rnburn.com>
|
||||
|
||||
PR cilkplus/69267
|
||||
* cilk.c (cilk_gimplify_call_params_in_spawned_fn): Change to use
|
||||
gimplify_arg. Removed superfluous post_p argument.
|
||||
* c-family.h (cilk_gimplify_call_params_in_spawned_fn): Removed
|
||||
superfluous post_p argument.
|
||||
* c-gimplify.c (c_gimplify_expr): Likewise.
|
||||
|
||||
2016-01-26 David Malcolm <dmalcolm@redhat.com>
|
||||
|
||||
PR other/69006
|
||||
|
@ -1449,8 +1449,7 @@ extern bool is_cilkplus_vector_p (tree);
|
||||
extern tree insert_cilk_frame (tree);
|
||||
extern void cilk_init_builtins (void);
|
||||
extern int gimplify_cilk_spawn (tree *);
|
||||
extern void cilk_gimplify_call_params_in_spawned_fn (tree *, gimple_seq *,
|
||||
gimple_seq *);
|
||||
extern void cilk_gimplify_call_params_in_spawned_fn (tree *, gimple_seq *);
|
||||
extern void cilk_install_body_with_frame_cleanup (tree, tree, void *);
|
||||
extern bool cilk_detect_spawn_and_unwrap (tree *);
|
||||
extern bool cilk_set_spawn_marker (location_t, tree);
|
||||
|
@ -277,7 +277,7 @@ c_gimplify_expr (tree *expr_p, gimple_seq *pre_p ATTRIBUTE_UNUSED,
|
||||
|
||||
if (!seen_error ())
|
||||
{
|
||||
cilk_gimplify_call_params_in_spawned_fn (expr_p, pre_p, post_p);
|
||||
cilk_gimplify_call_params_in_spawned_fn (expr_p, pre_p);
|
||||
return (enum gimplify_status) gimplify_cilk_spawn (expr_p);
|
||||
}
|
||||
return GS_ERROR;
|
||||
@ -292,7 +292,7 @@ c_gimplify_expr (tree *expr_p, gimple_seq *pre_p ATTRIBUTE_UNUSED,
|
||||
it is supposed to be. */
|
||||
&& !seen_error ())
|
||||
{
|
||||
cilk_gimplify_call_params_in_spawned_fn (expr_p, pre_p, post_p);
|
||||
cilk_gimplify_call_params_in_spawned_fn (expr_p, pre_p);
|
||||
return (enum gimplify_status) gimplify_cilk_spawn (expr_p);
|
||||
}
|
||||
|
||||
|
@ -779,8 +779,7 @@ create_cilk_wrapper (tree exp, tree *args_out)
|
||||
gimple sequences from the caller of gimplify_cilk_spawn. */
|
||||
|
||||
void
|
||||
cilk_gimplify_call_params_in_spawned_fn (tree *expr_p, gimple_seq *pre_p,
|
||||
gimple_seq *post_p)
|
||||
cilk_gimplify_call_params_in_spawned_fn (tree *expr_p, gimple_seq *pre_p)
|
||||
{
|
||||
int ii = 0;
|
||||
tree *fix_parm_expr = expr_p;
|
||||
@ -797,8 +796,8 @@ cilk_gimplify_call_params_in_spawned_fn (tree *expr_p, gimple_seq *pre_p,
|
||||
|
||||
if (TREE_CODE (*fix_parm_expr) == CALL_EXPR)
|
||||
for (ii = 0; ii < call_expr_nargs (*fix_parm_expr); ii++)
|
||||
gimplify_expr (&CALL_EXPR_ARG (*fix_parm_expr, ii), pre_p, post_p,
|
||||
is_gimple_reg, fb_rvalue);
|
||||
gimplify_arg (&CALL_EXPR_ARG (*fix_parm_expr, ii), pre_p,
|
||||
EXPR_LOCATION (*fix_parm_expr));
|
||||
}
|
||||
|
||||
|
||||
|
@ -1,3 +1,10 @@
|
||||
2016-01-27 Ryan Burn <contact@rnburn.com>
|
||||
|
||||
PR cilkplus/69267
|
||||
* cp-gimplify.c (cilk_cp_gimplify_call_params_in_spawned_fn): Removed
|
||||
superfluous post_p argument in call to
|
||||
cilk_gimplify_call_params_in_spawned_fn.
|
||||
|
||||
2016-01-27 Marek Polacek <polacek@redhat.com>
|
||||
|
||||
PR c++/69379
|
||||
|
@ -98,7 +98,7 @@ cilk_cp_gimplify_call_params_in_spawned_fn (tree *expr_p, gimple_seq *pre_p,
|
||||
{
|
||||
int ii = 0;
|
||||
|
||||
cilk_gimplify_call_params_in_spawned_fn (expr_p, pre_p, post_p);
|
||||
cilk_gimplify_call_params_in_spawned_fn (expr_p, pre_p);
|
||||
if (TREE_CODE (*expr_p) == AGGR_INIT_EXPR)
|
||||
for (ii = 0; ii < aggr_init_expr_nargs (*expr_p); ii++)
|
||||
gimplify_expr (&AGGR_INIT_EXPR_ARG (*expr_p, ii), pre_p, post_p,
|
||||
|
@ -1,3 +1,8 @@
|
||||
2016-01-27 Ryan Burn <contact@rnburn.com>
|
||||
|
||||
PR cilkplus/69267
|
||||
* g++.dg/cilk-plus/CK/pr69267.cc: New test.
|
||||
|
||||
2016-01-27 Uros Bizjak <ubizjak@gmail.com>
|
||||
|
||||
PR target/69512
|
||||
|
10
gcc/testsuite/g++.dg/cilk-plus/CK/pr69267.cc
Normal file
10
gcc/testsuite/g++.dg/cilk-plus/CK/pr69267.cc
Normal file
@ -0,0 +1,10 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-fcilkplus" } */
|
||||
|
||||
struct A {};
|
||||
|
||||
void f (A) {}
|
||||
|
||||
void g () {
|
||||
_Cilk_spawn f (A ());
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user