Commit d10e857e by Sebastian Pop Committed by Sebastian Pop

Check the if-convertibility of phi nodes in non predicated BBs.

2010-05-28  Sebastian Pop  <sebastian.pop@amd.com>

	PR middle-end/44293
	* tree-if-conv.c (if_convertible_loop_p): Check the
	if-convertibility of phi nodes in non predicated BBs.

From-SVN: r159990
parent 300d430f
2010-05-28 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/44293
* tree-if-conv.c (if_convertible_loop_p): Check the
if-convertibility of phi nodes in non predicated BBs.
2010-05-28 Joseph Myers <joseph@codesourcery.com> 2010-05-28 Joseph Myers <joseph@codesourcery.com>
* gcc.c (error, warning, inform): Remove duplicate ": " in output. * gcc.c (error, warning, inform): Remove duplicate ": " in output.
......
...@@ -693,6 +693,10 @@ if_convertible_loop_p (struct loop *loop) ...@@ -693,6 +693,10 @@ if_convertible_loop_p (struct loop *loop)
basic_block bb = ifc_bbs[i]; basic_block bb = ifc_bbs[i];
gimple_stmt_iterator itr; gimple_stmt_iterator itr;
for (itr = gsi_start_phis (bb); !gsi_end_p (itr); gsi_next (&itr))
if (!if_convertible_phi_p (loop, bb, gsi_stmt (itr)))
return false;
/* For non predicated BBs, don't check their statements. */ /* For non predicated BBs, don't check their statements. */
if (!is_predicated (bb)) if (!is_predicated (bb))
continue; continue;
...@@ -700,10 +704,6 @@ if_convertible_loop_p (struct loop *loop) ...@@ -700,10 +704,6 @@ if_convertible_loop_p (struct loop *loop)
for (itr = gsi_start_bb (bb); !gsi_end_p (itr); gsi_next (&itr)) for (itr = gsi_start_bb (bb); !gsi_end_p (itr); gsi_next (&itr))
if (!if_convertible_stmt_p (loop, bb, gsi_stmt (itr))) if (!if_convertible_stmt_p (loop, bb, gsi_stmt (itr)))
return false; return false;
for (itr = gsi_start_phis (bb); !gsi_end_p (itr); gsi_next (&itr))
if (!if_convertible_phi_p (loop, bb, gsi_stmt (itr)))
return false;
} }
if (dump_file) if (dump_file)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment