aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-inline.c
diff options
context:
space:
mode:
authorRichard Guenther <rguenther@suse.de>2012-08-02 11:40:20 +0000
committerRichard Guenther <rguenther@suse.de>2012-08-02 11:40:20 +0000
commit65ac04853009bd4a971eacc4d03d377a324b35ce (patch)
tree7d44a4c9f671c4b247e1567327eda00cf283e581 /gcc/tree-inline.c
parent838acfa4fc5dc88c7e04b77e9ff7f4cbc51cc6be (diff)
2012-08-02 Richard Guenther <rguenther@suse.de>
* tree-flow.h (set_default_def): Rename to ... (set_ssa_default_def): ... this. Take a struct function argument. (gimple_default_def): Rename to ... (ssa_default_def): ... this. (get_or_create_ssa_default_def): New function. * tree-dfa.c: Likewise. (dump_variable): Adjust. * ipa-prop.c (ipa_analyze_params_uses): Adjust, properly check for used parameters. * ipa-split.c (consider_split): Adjust, avoid repeated default-def lookups. (split_function): Likewise. * lto-streamer-in.c (input_ssa_names): Adjust. * omp-low.c (expand_omp_taskreg): Likewise. * tree-cfg.c (replace_ssa_name): Adjust, no need to push/pop cfun. * tree-complex.c (init_parameter_lattice_values): Adjust. (get_component_ssa_name): Likewise. (update_parameter_components): Likewise. * tree-inline.c (remap_ssa_name): Likewise. (setup_one_parameter): Likewise. (initialize_inlined_parameters): Likewise. (declare_return_variable): Likewise. (expand_call_inline): Likewise. (tree_function_versioning): Likewise. * tree-into-ssa.c (get_default_def_for): Remove. (get_reaching_def): Use get_or_create_ssa_default_def instead. * tree-predcom.c (replace_ref_with): Adjust. * tree-sra.c (get_repl_default_def_ssa_name): Likewise. (is_unused_scalar_param): Likewise. (ptr_parm_has_direct_uses): Likewise. (sra_ipa_reset_debug_stmts): Likewise. * tree-ssa-coalesce.c (create_outofssa_var_map): Adjust. * tree-ssa-copyrename.c (copy_rename_partition_coalesce): Likewise. * tree-ssa-live.c (verify_live_on_entry): Likewise. * tree-ssa-math-opts.c (execute_cse_reciprocals): Likewise, avoid repeated default def lookups. * tree-ssa-sccvn.c (run_scc_vn): Likewise. * tree-tailcall.c (arg_needs_copy_p): Adjust. (tree_optimize_tail_calls_1): Likewise. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@190073 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-inline.c')
-rw-r--r--gcc/tree-inline.c25
1 files changed, 10 insertions, 15 deletions
diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c
index 8ca912ef1b1..ba716f5cbc0 100644
--- a/gcc/tree-inline.c
+++ b/gcc/tree-inline.c
@@ -247,7 +247,7 @@ remap_ssa_name (tree name, copy_body_data *id)
struct ptr_info_def *new_pi = get_ptr_info (new_tree);
new_pi->pt = pi->pt;
}
- if (gimple_nop_p (SSA_NAME_DEF_STMT (name)))
+ if (SSA_NAME_IS_DEFAULT_DEF (name))
{
/* By inlining function having uninitialized variable, we might
extend the lifetime (variable might get reused). This cause
@@ -259,7 +259,6 @@ remap_ssa_name (tree name, copy_body_data *id)
this for all BBs that are not inside strongly connected
regions of the CFG, but this is expensive to test. */
if (id->entry_bb
- && is_gimple_reg (SSA_NAME_VAR (name))
&& SSA_NAME_OCCURS_IN_ABNORMAL_PHI (name)
&& TREE_CODE (SSA_NAME_VAR (name)) != PARM_DECL
&& (id->entry_bb != EDGE_SUCC (ENTRY_BLOCK_PTR, 0)->dest
@@ -276,9 +275,7 @@ remap_ssa_name (tree name, copy_body_data *id)
else
{
SSA_NAME_DEF_STMT (new_tree) = gimple_build_nop ();
- if (gimple_default_def (id->src_cfun, SSA_NAME_VAR (name))
- == name)
- set_default_def (SSA_NAME_VAR (new_tree), new_tree);
+ set_ssa_default_def (cfun, SSA_NAME_VAR (new_tree), new_tree);
}
}
}
@@ -2502,7 +2499,7 @@ setup_one_parameter (copy_body_data *id, tree p, tree value, tree fn,
tree var;
tree rhs = value;
tree def = (gimple_in_ssa_p (cfun)
- ? gimple_default_def (id->src_cfun, p) : NULL);
+ ? ssa_default_def (id->src_cfun, p) : NULL);
if (value
&& value != error_mark_node
@@ -2635,7 +2632,7 @@ setup_one_parameter (copy_body_data *id, tree p, tree value, tree fn,
def = remap_ssa_name (def, id);
init_stmt = gimple_build_assign (def, rhs);
SSA_NAME_IS_DEFAULT_DEF (def) = 0;
- set_default_def (var, NULL);
+ set_ssa_default_def (cfun, var, NULL);
}
else if (!optimize)
{
@@ -2687,7 +2684,7 @@ initialize_inlined_parameters (copy_body_data *id, gimple stmt,
&& TREE_CODE (*varp) == VAR_DECL)
{
tree def = (gimple_in_ssa_p (cfun) && is_gimple_reg (p)
- ? gimple_default_def (id->src_cfun, p) : NULL);
+ ? ssa_default_def (id->src_cfun, p) : NULL);
tree var = *varp;
TREE_TYPE (var) = remap_type (TREE_TYPE (var), id);
/* Also remap the default definition if it was remapped
@@ -2902,8 +2899,7 @@ declare_return_variable (copy_body_data *id, tree return_slot, tree modify_dest,
&& is_gimple_reg (result))
{
temp = make_ssa_name (temp, NULL);
- insert_decl_map (id, gimple_default_def (id->src_cfun, result),
- temp);
+ insert_decl_map (id, ssa_default_def (id->src_cfun, result), temp);
}
insert_init_stmt (id, entry_bb, gimple_build_assign (temp, var));
}
@@ -3983,7 +3979,7 @@ expand_call_inline (basic_block bb, gimple stmt, copy_body_data *id)
{
tree name = gimple_call_lhs (stmt);
tree var = SSA_NAME_VAR (name);
- tree def = gimple_default_def (cfun, var);
+ tree def = ssa_default_def (cfun, var);
if (def)
{
@@ -3996,7 +3992,7 @@ expand_call_inline (basic_block bb, gimple stmt, copy_body_data *id)
{
/* Otherwise make this variable undefined. */
gsi_remove (&stmt_gsi, true);
- set_default_def (var, name);
+ set_ssa_default_def (cfun, var, name);
SSA_NAME_DEF_STMT (name) = gimple_build_nop ();
}
}
@@ -5160,13 +5156,12 @@ tree_function_versioning (tree old_decl, tree new_decl,
lang_hooks.dup_lang_specific_decl (DECL_RESULT (new_decl));
if (gimple_in_ssa_p (id.src_cfun)
&& DECL_BY_REFERENCE (DECL_RESULT (old_decl))
- && (old_name
- = gimple_default_def (id.src_cfun, DECL_RESULT (old_decl))))
+ && (old_name = ssa_default_def (id.src_cfun, DECL_RESULT (old_decl))))
{
tree new_name = make_ssa_name (DECL_RESULT (new_decl), NULL);
insert_decl_map (&id, old_name, new_name);
SSA_NAME_DEF_STMT (new_name) = gimple_build_nop ();
- set_default_def (DECL_RESULT (new_decl), new_name);
+ set_ssa_default_def (cfun, DECL_RESULT (new_decl), new_name);
}
}