re PR middle-end/50260 (internal compiler error: Segmentation fault at ../../gcc/gcc/tree-ssa-live.c:88)
PR middle-end/50260 * ipa-split.c (split_function): Call add_referenced_var. * tree-ssa-phiopt.c (cond_store_replacement): Don't call get_var_ann. (cond_if_else_store_replacement_1): Ditto. * tree-ssa-pre.c (get_representative_for): Ditto. (create_expression_by_pieces): Ditto. (insert_into_preds_of_block): Ditto. * tree-sra.c (create_access_replacement): Ditto. (get_replaced_param_substitute): Ditto. From-SVN: r178489
This commit is contained in:
parent
6bd9bf4254
commit
dde460d482
|
@ -1,3 +1,16 @@
|
|||
2011-09-02 Michael Matz <matz@suse.de>
|
||||
|
||||
PR middle-end/50260
|
||||
* ipa-split.c (split_function): Call add_referenced_var.
|
||||
|
||||
* tree-ssa-phiopt.c (cond_store_replacement): Don't call get_var_ann.
|
||||
(cond_if_else_store_replacement_1): Ditto.
|
||||
* tree-ssa-pre.c (get_representative_for): Ditto.
|
||||
(create_expression_by_pieces): Ditto.
|
||||
(insert_into_preds_of_block): Ditto.
|
||||
* tree-sra.c (create_access_replacement): Ditto.
|
||||
(get_replaced_param_substitute): Ditto.
|
||||
|
||||
2011-09-02 Bernd Schmidt <bernds@codesourcery.com>
|
||||
|
||||
* config/c6x/c6x.md (collapse-ndfa, no-comb-vect): New
|
||||
|
|
|
@ -988,6 +988,9 @@ split_function (struct split_point *split_point)
|
|||
arg = gimple_default_def (cfun, parm);
|
||||
if (!arg)
|
||||
{
|
||||
/* This parm wasn't used up to now, but is going to be used,
|
||||
hence register it. */
|
||||
add_referenced_var (parm);
|
||||
arg = make_ssa_name (parm, gimple_build_nop ());
|
||||
set_default_def (parm, arg);
|
||||
}
|
||||
|
|
|
@ -1825,7 +1825,6 @@ create_access_replacement (struct access *access, bool rename)
|
|||
tree repl;
|
||||
|
||||
repl = create_tmp_var (access->type, "SR");
|
||||
get_var_ann (repl);
|
||||
add_referenced_var (repl);
|
||||
if (rename)
|
||||
mark_sym_for_renaming (repl);
|
||||
|
@ -4106,7 +4105,6 @@ get_replaced_param_substitute (struct ipa_parm_adjustment *adj)
|
|||
DECL_NAME (repl) = get_identifier (pretty_name);
|
||||
obstack_free (&name_obstack, pretty_name);
|
||||
|
||||
get_var_ann (repl);
|
||||
add_referenced_var (repl);
|
||||
adj->new_ssa_base = repl;
|
||||
}
|
||||
|
|
|
@ -1269,10 +1269,7 @@ cond_store_replacement (basic_block middle_bb, basic_block join_bb,
|
|||
/* 2) Create a temporary where we can store the old content
|
||||
of the memory touched by the store, if we need to. */
|
||||
if (!condstoretemp || TREE_TYPE (lhs) != TREE_TYPE (condstoretemp))
|
||||
{
|
||||
condstoretemp = create_tmp_reg (TREE_TYPE (lhs), "cstore");
|
||||
get_var_ann (condstoretemp);
|
||||
}
|
||||
add_referenced_var (condstoretemp);
|
||||
|
||||
/* 3) Insert a load from the memory of the store to the temporary
|
||||
|
@ -1355,10 +1352,7 @@ cond_if_else_store_replacement_1 (basic_block then_bb, basic_block else_bb,
|
|||
/* 2) Create a temporary where we can store the old content
|
||||
of the memory touched by the store, if we need to. */
|
||||
if (!condstoretemp || TREE_TYPE (lhs) != TREE_TYPE (condstoretemp))
|
||||
{
|
||||
condstoretemp = create_tmp_reg (TREE_TYPE (lhs), "cstore");
|
||||
get_var_ann (condstoretemp);
|
||||
}
|
||||
add_referenced_var (condstoretemp);
|
||||
|
||||
/* 3) Create a PHI node at the join block, with one argument
|
||||
|
|
|
@ -1399,7 +1399,7 @@ get_representative_for (const pre_expr e)
|
|||
if (!pretemp || exprtype != TREE_TYPE (pretemp))
|
||||
{
|
||||
pretemp = create_tmp_reg (exprtype, "pretmp");
|
||||
get_var_ann (pretemp);
|
||||
add_referenced_var (pretemp);
|
||||
}
|
||||
|
||||
name = make_ssa_name (pretemp, gimple_build_nop ());
|
||||
|
@ -3178,10 +3178,7 @@ create_expression_by_pieces (basic_block block, pre_expr expr,
|
|||
/* Build and insert the assignment of the end result to the temporary
|
||||
that we will return. */
|
||||
if (!pretemp || exprtype != TREE_TYPE (pretemp))
|
||||
{
|
||||
pretemp = create_tmp_reg (exprtype, "pretmp");
|
||||
get_var_ann (pretemp);
|
||||
}
|
||||
|
||||
temp = pretemp;
|
||||
add_referenced_var (temp);
|
||||
|
@ -3441,10 +3438,7 @@ insert_into_preds_of_block (basic_block block, unsigned int exprnum,
|
|||
|
||||
/* Now build a phi for the new variable. */
|
||||
if (!prephitemp || TREE_TYPE (prephitemp) != type)
|
||||
{
|
||||
prephitemp = create_tmp_var (type, "prephitmp");
|
||||
get_var_ann (prephitemp);
|
||||
}
|
||||
|
||||
temp = prephitemp;
|
||||
add_referenced_var (temp);
|
||||
|
|
Loading…
Reference in New Issue