diff options
author | Richard Guenther <rguenther@suse.de> | 2012-04-05 09:45:18 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2012-04-05 09:45:18 +0000 |
commit | 3d3f224949f46f992c30ef39036b6f0d20c2406d (patch) | |
tree | 82a4f09ff51f17c39f508dc9425bc833499b68fd /gcc/tree-sra.c | |
parent | b5b3ec3e6ebe5b7a07654d94f53f97b0a8cca050 (diff) | |
download | gcc-3d3f224949f46f992c30ef39036b6f0d20c2406d.zip gcc-3d3f224949f46f992c30ef39036b6f0d20c2406d.tar.gz gcc-3d3f224949f46f992c30ef39036b6f0d20c2406d.tar.bz2 |
tree-nrv.c (tree_nrv): Release VDEFs.
2012-04-05 Richard Guenther <rguenther@suse.de>
* tree-nrv.c (tree_nrv): Release VDEFs.
* tree-sra.c (sra_modify_constructor_assign): Likewise.
(sra_modify_assign): Likewise.
* tree-vect-stmts.c (vect_remove_stores): Likewise.
* tree-vect-loop.c (vect_transform_loop): Likewise.
* tree-ssa-dom.c (optimize_stmt): Likewise.
* tree-vect-slp.c (vect_schedule_slp): Likewise.
* tree-ssa-math-opts.c (execute_cse_sincos): Likewise.
From-SVN: r186160
Diffstat (limited to 'gcc/tree-sra.c')
-rw-r--r-- | gcc/tree-sra.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/tree-sra.c b/gcc/tree-sra.c index 84dc3be..c5f105a 100644 --- a/gcc/tree-sra.c +++ b/gcc/tree-sra.c @@ -2821,6 +2821,7 @@ sra_modify_constructor_assign (gimple *stmt, gimple_stmt_iterator *gsi) { unlink_stmt_vdef (*stmt); gsi_remove (gsi, true); + release_defs (*stmt); return SRA_AM_REMOVED; } else @@ -2844,6 +2845,7 @@ sra_modify_constructor_assign (gimple *stmt, gimple_stmt_iterator *gsi) init_subtree_with_zero (acc, gsi, false, loc); unlink_stmt_vdef (*stmt); gsi_remove (gsi, true); + release_defs (*stmt); return SRA_AM_REMOVED; } else @@ -3094,6 +3096,7 @@ sra_modify_assign (gimple *stmt, gimple_stmt_iterator *gsi) gsi_next (gsi); unlink_stmt_vdef (*stmt); gsi_remove (&orig_gsi, true); + release_defs (*stmt); sra_stats.deleted++; return SRA_AM_REMOVED; } @@ -3114,6 +3117,7 @@ sra_modify_assign (gimple *stmt, gimple_stmt_iterator *gsi) gcc_assert (*stmt == gsi_stmt (*gsi)); unlink_stmt_vdef (*stmt); gsi_remove (gsi, true); + release_defs (*stmt); sra_stats.deleted++; return SRA_AM_REMOVED; } |