diff options
Diffstat (limited to 'gcc/function.c')
-rw-r--r-- | gcc/function.c | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/gcc/function.c b/gcc/function.c index fa2a84d..532a94f 100644 --- a/gcc/function.c +++ b/gcc/function.c @@ -59,7 +59,7 @@ along with GCC; see the file COPYING3. If not see #include "langhooks.h" #include "target.h" #include "cfglayout.h" -#include "tree-gimple.h" +#include "gimple.h" #include "tree-pass.h" #include "predict.h" #include "df.h" @@ -1547,7 +1547,7 @@ static tree instantiate_expr (tree *tp, int *walk_subtrees, void *data ATTRIBUTE_UNUSED) { tree t = *tp; - if (! EXPR_P (t) && ! GIMPLE_STMT_P (t)) + if (! EXPR_P (t)) { *walk_subtrees = 0; if (DECL_P (t) && DECL_RTL_SET_P (t)) @@ -3092,7 +3092,7 @@ gimplify_parm_type (tree *tp, int *walk_subtrees, void *data) else if (TYPE_SIZE (t) && !TREE_CONSTANT (TYPE_SIZE (t)) && !TYPE_SIZES_GIMPLIFIED (t)) { - gimplify_type_sizes (t, (tree *) data); + gimplify_type_sizes (t, (gimple_seq *) data); *walk_subtrees = 1; } } @@ -3102,15 +3102,15 @@ gimplify_parm_type (tree *tp, int *walk_subtrees, void *data) /* Gimplify the parameter list for current_function_decl. This involves evaluating SAVE_EXPRs of variable sized parameters and generating code - to implement callee-copies reference parameters. Returns a list of - statements to add to the beginning of the function, or NULL if nothing - to do. */ + to implement callee-copies reference parameters. Returns a sequence of + statements to add to the beginning of the function. */ -tree +gimple_seq gimplify_parameters (void) { struct assign_parm_data_all all; - tree fnargs, parm, stmts = NULL; + tree fnargs, parm; + gimple_seq stmts = NULL; assign_parms_initialize_all (&all); fnargs = assign_parms_augmented_arg_list (&all); @@ -3170,12 +3170,11 @@ gimplify_parameters (void) t = built_in_decls[BUILT_IN_ALLOCA]; t = build_call_expr (t, 1, DECL_SIZE_UNIT (parm)); t = fold_convert (ptr_type, t); - t = build_gimple_modify_stmt (addr, t); + t = build2 (MODIFY_EXPR, TREE_TYPE (addr), addr, t); gimplify_and_add (t, &stmts); } - t = build_gimple_modify_stmt (local, parm); - gimplify_and_add (t, &stmts); + gimplify_assign (local, parm, &stmts); SET_DECL_VALUE_EXPR (parm, local); DECL_HAS_VALUE_EXPR_P (parm) = 1; |