diff options
author | Bin Cheng <bin.cheng@arm.com> | 2017-11-10 12:46:33 +0000 |
---|---|---|
committer | Bin Cheng <amker@gcc.gnu.org> | 2017-11-10 12:46:33 +0000 |
commit | df3c2945360a0c07579929f20b080ec5f903a0ad (patch) | |
tree | c14b7a29fc1876745e42b9f11b5b8badff9fe4b0 /gcc | |
parent | 8cd119d857b727ce0ee7b3c7aead38d8fdcc1a7e (diff) | |
download | gcc-df3c2945360a0c07579929f20b080ec5f903a0ad.zip gcc-df3c2945360a0c07579929f20b080ec5f903a0ad.tar.gz gcc-df3c2945360a0c07579929f20b080ec5f903a0ad.tar.bz2 |
tree-predcom.c (determine_roots_comp): Avoid memory leak by freeing reference of trivial component.
* tree-predcom.c (determine_roots_comp): Avoid memory leak by freeing
reference of trivial component.
From-SVN: r254625
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/tree-predcom.c | 9 |
2 files changed, 13 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b82ce62..1ed540a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2017-11-10 Bin Cheng <bin.cheng@arm.com> + + * tree-predcom.c (determine_roots_comp): Avoid memory leak by freeing + reference of trivial component. + 2017-11-10 Jakub Jelinek <jakub@redhat.com> PR bootstrap/82916 diff --git a/gcc/tree-predcom.c b/gcc/tree-predcom.c index fdb32f1..d078b96 100644 --- a/gcc/tree-predcom.c +++ b/gcc/tree-predcom.c @@ -1331,7 +1331,14 @@ determine_roots_comp (struct loop *loop, /* Trivial component. */ if (comp->refs.length () <= 1) - return; + { + if (comp->refs.length () == 1) + { + free (comp->refs[0]); + comp->refs.truncate (0); + } + return; + } comp->refs.qsort (order_drefs); FOR_EACH_VEC_ELT (comp->refs, i, a) |