ipa-prop.c (compute_complex_ancestor_jump_func): Work also if the zero is the first phi parameter.

2010-12-09  Martin Jambor  <mjambor@suse.cz>

	* ipa-prop.c (compute_complex_ancestor_jump_func): Work also if the
	zero is the first phi parameter.

From-SVN: r167642
This commit is contained in:
Martin Jambor 2010-12-09 16:27:14 +01:00 committed by Martin Jambor
parent 82d4982997
commit 54e348cb3b
2 changed files with 12 additions and 3 deletions

View File

@ -1,3 +1,8 @@
2010-12-09 Martin Jambor <mjambor@suse.cz>
* ipa-prop.c (compute_complex_ancestor_jump_func): Work also if the
zero is the first phi parameter.
2010-12-09 Martin Jambor <mjambor@suse.cz>
* ipa-prop.h (struct ipa_parm_adjustment): New field alias_ptr_type.

View File

@ -460,11 +460,15 @@ compute_complex_ancestor_jump_func (struct ipa_node_params *info,
tree tmp, parm, expr;
int index, i;
if (gimple_phi_num_args (phi) != 2
|| !integer_zerop (PHI_ARG_DEF (phi, 1)))
if (gimple_phi_num_args (phi) != 2)
return;
tmp = PHI_ARG_DEF (phi, 0);
if (integer_zerop (PHI_ARG_DEF (phi, 1)))
tmp = PHI_ARG_DEF (phi, 0);
else if (integer_zerop (PHI_ARG_DEF (phi, 0)))
tmp = PHI_ARG_DEF (phi, 1);
else
return;
if (TREE_CODE (tmp) != SSA_NAME
|| SSA_NAME_IS_DEFAULT_DEF (tmp)
|| !POINTER_TYPE_P (TREE_TYPE (tmp))