aboutsummaryrefslogtreecommitdiff
path: root/gcc/gimple-loop-jam.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2021-02-02 19:21:02 +0100
committerRichard Biener <rguenther@suse.de>2021-02-02 20:07:30 +0100
commit5d5130ad5c396bd2dcde766c0c994855b815355b (patch)
tree80e81b1783760c0d87e5b57cd9b2489d99b12728 /gcc/gimple-loop-jam.c
parentdb53dd4f784d5d36c2119dd66a22ad40b5020b1c (diff)
downloadgcc-5d5130ad5c396bd2dcde766c0c994855b815355b.zip
gcc-5d5130ad5c396bd2dcde766c0c994855b815355b.tar.gz
gcc-5d5130ad5c396bd2dcde766c0c994855b815355b.tar.bz2
fix memory leaks
This fixes various vec<> memory leaks as discovered compiling 521.wrf_r. 2021-02-02 Richard Biener <rguenther@suse.de> * gimple-loop-interchange.cc (prepare_data_references): Release vectors. * gimple-loop-jam.c (tree_loop_unroll_and_jam): Likewise. * tree-ssa-loop-im.c (hoist_memory_references): Likewise. * tree-vect-stmts.c (vectorizable_condition): Do not allocate vectors. (vectorizable_comparison): Likewise.
Diffstat (limited to 'gcc/gimple-loop-jam.c')
-rw-r--r--gcc/gimple-loop-jam.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/gcc/gimple-loop-jam.c b/gcc/gimple-loop-jam.c
index 485f5a9..69dbaeb 100644
--- a/gcc/gimple-loop-jam.c
+++ b/gcc/gimple-loop-jam.c
@@ -505,15 +505,13 @@ tree_loop_unroll_and_jam (void)
if (!unroll_jam_possible_p (outer, loop))
continue;
- vec<data_reference_p> datarefs;
- vec<ddr_p> dependences;
+ vec<data_reference_p> datarefs = vNULL;
+ vec<ddr_p> dependences = vNULL;
unsigned unroll_factor, profit_unroll, removed;
class tree_niter_desc desc;
bool unroll = false;
auto_vec<loop_p, 3> loop_nest;
- dependences.create (10);
- datarefs.create (10);
if (!compute_data_dependences_for_loop (outer, true, &loop_nest,
&datarefs, &dependences))
{