re PR tree-optimization/55334 (mgrid regression (ipa-cp disables vectorization))

2013-02-20  Martin Jambor  <mjambor@suse.cz>

	PR tree-optimization/55334
	* ipa-cp.c (initialize_node_lattices): Disable IPA-CP through and to
	restricted pointers to arrays.

From-SVN: r196171
This commit is contained in:
Martin Jambor 2013-02-20 13:56:30 +01:00 committed by Martin Jambor
parent e91c8ed63f
commit ec9c9d1b98
2 changed files with 22 additions and 0 deletions

View File

@ -1,3 +1,9 @@
2013-02-20 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/55334
* ipa-cp.c (initialize_node_lattices): Disable IPA-CP through and to
restricted pointers to arrays.
2013-02-20 Richard Biener <rguenther@suse.de>
Jakub Jelinek <jakub@redhat.com>

View File

@ -730,6 +730,22 @@ initialize_node_lattices (struct cgraph_node *node)
cgraph_node_name (node), node->uid,
disable ? "BOTTOM" : "VARIABLE");
}
if (!disable)
for (i = 0; i < ipa_get_param_count (info) ; i++)
{
struct ipcp_param_lattices *plats = ipa_get_parm_lattices (info, i);
tree t = TREE_TYPE (ipa_get_param(info, i));
if (POINTER_TYPE_P (t) && TYPE_RESTRICT (t)
&& TREE_CODE (TREE_TYPE (t)) == ARRAY_TYPE)
{
set_lattice_to_bottom (&plats->itself);
if (dump_file && (dump_flags & TDF_DETAILS)
&& !node->alias && !node->thunk.thunk_p)
fprintf (dump_file, "Going to ignore param %i of of %s/%i.\n",
i, cgraph_node_name (node), node->uid);
}
}
for (ie = node->indirect_calls; ie; ie = ie->next_callee)
if (ie->indirect_info->polymorphic)