re PR middle-end/56461 (GCC is leaking lots of memory)

PR middle-end/56461
	* tree-vect-stmts.c (free_stmt_vec_info_vec): Call
	free_stmt_vec_info on any left-over stmt_vec_info in the vector.
	* tree-vect-loop.c (vect_create_epilog_for_reduction): Release
	inner_phis vector.

From-SVN: r196453
This commit is contained in:
Jakub Jelinek 2013-03-05 10:37:56 +01:00 committed by Jakub Jelinek
parent 3e492e9ca6
commit 9367544433
3 changed files with 15 additions and 1 deletions

View File

@ -1,3 +1,11 @@
2013-03-05 Jakub Jelinek <jakub@redhat.com>
PR middle-end/56461
* tree-vect-stmts.c (free_stmt_vec_info_vec): Call
free_stmt_vec_info on any left-over stmt_vec_info in the vector.
* tree-vect-loop.c (vect_create_epilog_for_reduction): Release
inner_phis vector.
2013-03-05 Richard Biener <rguenther@suse.de>
PR lto/56515

View File

@ -4487,8 +4487,9 @@ vect_finalize_reduction:
}
scalar_results.release ();
inner_phis.release ();
new_phis.release ();
}
}
/* Function vectorizable_reduction.

View File

@ -5969,6 +5969,11 @@ init_stmt_vec_info_vec (void)
void
free_stmt_vec_info_vec (void)
{
unsigned int i;
vec_void_p info;
FOR_EACH_VEC_ELT (stmt_vec_info_vec, i, info)
if (info != NULL)
free_stmt_vec_info (STMT_VINFO_STMT ((stmt_vec_info) info));
gcc_assert (stmt_vec_info_vec.exists ());
stmt_vec_info_vec.release ();
}