Commit 6f723d33 by Jakub Jelinek Committed by Jakub Jelinek

tree-vrp.c (find_assert_locations): Skip also edges from the entry block.

	* tree-vrp.c (find_assert_locations): Skip also edges
	from the entry block.

	* tree-vect-loop-manip.c (slpeel_make_loop_iterate_ntimes): Call
	free_stmt_vec_info on orig_cond after gsi_removing it.
	* tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Always
	free body_cost_vec vector.
	(vect_analyze_data_refs): If gather is unsuccessful,
	free_data_ref (dr).
	* tree-inline.c (tree_function_versioning): Free
	old_transforms_to_apply vector.

From-SVN: r190590
parent 06d43afd
2012-08-22 Jakub Jelinek <jakub@redhat.com>
* tree-vrp.c (find_assert_locations): Skip also edges
from the entry block.
* tree-vect-loop-manip.c (slpeel_make_loop_iterate_ntimes): Call
free_stmt_vec_info on orig_cond after gsi_removing it.
* tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Always
free body_cost_vec vector.
(vect_analyze_data_refs): If gather is unsuccessful,
free_data_ref (dr).
* tree-inline.c (tree_function_versioning): Free
old_transforms_to_apply vector.
2012-08-22 Steven Bosscher <steven@gcc.gnu.org>
* tree-ssa-coalesce.c (struct ssa_conflicts_d): Make contents
......
......@@ -5089,6 +5089,7 @@ tree_function_versioning (tree old_decl, tree new_decl,
VEC_index (ipa_opt_pass,
old_transforms_to_apply,
i));
VEC_free (ipa_opt_pass, heap, old_transforms_to_apply);
}
id.copy_decl = copy_decl_no_change;
......
/* Data References Analysis and Manipulation Utilities for Vectorization.
Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
Free Software Foundation, Inc.
Contributed by Dorit Naishlos <dorit@il.ibm.com>
and Ira Rosen <irar@il.ibm.com>
......@@ -1934,10 +1934,9 @@ vect_enhance_data_refs_alignment (loop_vec_info loop_vinfo)
gcc_assert (stat);
return stat;
}
else
VEC_free (stmt_info_for_cost, heap, body_cost_vec);
}
VEC_free (stmt_info_for_cost, heap, body_cost_vec);
/* (2) Versioning to force alignment. */
......@@ -3313,6 +3312,8 @@ vect_analyze_data_refs (loop_vec_info loop_vinfo,
gather = false;
if (!gather)
{
STMT_VINFO_DATA_REF (stmt_info) = NULL;
free_data_ref (dr);
if (vect_print_dump_info (REPORT_UNVECTORIZED_LOCATIONS))
{
fprintf (vect_dump,
......
......@@ -788,6 +788,7 @@ slpeel_make_loop_iterate_ntimes (struct loop *loop, tree niters)
/* Remove old loop exit test: */
gsi_remove (&loop_cond_gsi, true);
free_stmt_vec_info (orig_cond);
loop_loc = find_loop_location (loop);
if (dump_file && (dump_flags & TDF_DETAILS))
......
......@@ -5596,7 +5596,7 @@ find_assert_locations (void)
FOR_EACH_EDGE (e, ei, bb->preds)
{
int pred = e->src->index;
if (e->flags & EDGE_DFS_BACK)
if ((e->flags & EDGE_DFS_BACK) || pred == ENTRY_BLOCK)
continue;
if (!live[pred])
......
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