diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9d19ea16258..52e75658a24 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2010-09-30 Sebastian Pop + + * graphite-sese-to-poly.c (reduction_phi_p): Remove check for + is_gimple_reg. + (rewrite_degenerate_phi): Same. + (rewrite_reductions_out_of_ssa): Add check for is_gimple_reg. + 2010-09-30 Vladimir Kargov * graphite-scop-detection.c (graphite_can_represent_scev, diff --git a/gcc/ChangeLog.graphite b/gcc/ChangeLog.graphite index b9c258d1bf6..e48ee07472b 100644 --- a/gcc/ChangeLog.graphite +++ b/gcc/ChangeLog.graphite @@ -1,7 +1,14 @@ +2010-08-20 Sebastian Pop + + * graphite-sese-to-poly.c (reduction_phi_p): Remove check for + is_gimple_reg. + (rewrite_degenerate_phi): Same. + (rewrite_reductions_out_of_ssa): Add check for is_gimple_reg. + 2010-08-18 Vladimir Kargov * graphite-scop-detection.c (graphite_can_represent_scev, - graphite_can_represent_expr, stmt_has_simple_data_refs_p, + graphite_can_represent_expr, stmt_has_simple_data_refs_p, graphite_can_represent_loop): Remove outermost_loop. 2010-08-17 Sebastian Pop diff --git a/gcc/graphite-sese-to-poly.c b/gcc/graphite-sese-to-poly.c index 09abd5032d7..1ee6feeed15 100644 --- a/gcc/graphite-sese-to-poly.c +++ b/gcc/graphite-sese-to-poly.c @@ -168,12 +168,6 @@ reduction_phi_p (sese region, gimple_stmt_iterator *psi) gimple phi = gsi_stmt (*psi); tree res = gimple_phi_result (phi); - if (!is_gimple_reg (res)) - { - gsi_next (psi); - return false; - } - loop = loop_containing_stmt (phi); if (simple_copy_phi_p (phi)) @@ -2359,12 +2353,6 @@ rewrite_degenerate_phi (gimple_stmt_iterator *psi) tree res = gimple_phi_result (phi); basic_block bb; - if (!is_gimple_reg (res)) - { - gsi_next (psi); - return; - } - bb = gimple_bb (phi); rhs = degenerate_phi_result (phi); gcc_assert (rhs); @@ -2392,6 +2380,12 @@ rewrite_reductions_out_of_ssa (scop_p scop) { gimple phi = gsi_stmt (psi); + if (!is_gimple_reg (gimple_phi_result (phi))) + { + gsi_next (&psi); + continue; + } + if (gimple_phi_num_args (phi) > 1 && degenerate_phi_result (phi)) rewrite_degenerate_phi (&psi);