From 338392ed0fd9ca466905860e931b7a480179bce4 Mon Sep 17 00:00:00 2001 From: Tom de Vries Date: Tue, 7 Jul 2015 16:25:12 +0000 Subject: Add rewrite_virtuals_into_loop_closed_ssa 2015-07-07 Tom de Vries * tree-cfg.c (get_virtual_phi): New function. * tree-cfg.h (get_virtual_phi): Declare. * tree-ssa-loop-manip.c (replace_uses_in_dominated_bbs) (rewrite_virtuals_into_loop_closed_ssa): New function. * tree-ssa-loop-manip.h (rewrite_virtuals_into_loop_closed_ssa): Declare. * tree-parloops.c (replace_uses_in_bbs_by): Remove. (transform_to_exit_first_loop_alt): Use rewrite_virtuals_into_loop_closed_ssa. From-SVN: r225520 --- gcc/tree-cfg.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'gcc/tree-cfg.c') diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c index f47795a..b7c4026 100644 --- a/gcc/tree-cfg.c +++ b/gcc/tree-cfg.c @@ -2623,6 +2623,23 @@ delete_tree_cfg_annotations (void) vec_free (label_to_block_map_for_fn (cfun)); } +/* Return the virtual phi in BB. */ + +gphi * +get_virtual_phi (basic_block bb) +{ + for (gphi_iterator gsi = gsi_start_phis (bb); + !gsi_end_p (gsi); + gsi_next (&gsi)) + { + gphi *phi = gsi.phi (); + + if (virtual_operand_p (PHI_RESULT (phi))) + return phi; + } + + return NULL; +} /* Return the first statement in basic block BB. */ -- cgit v1.1