Commit 89bd38d3 by David Malcolm Committed by David Malcolm

PR jit/63854: Fix leak of paths within jump threading

gcc/ChangeLog:
	PR jit/63854
	* tree-ssa-threadedge.c (thread_across_edge): Don't just release
	"path", delete it.
	* tree-ssa-threadupdate.c (delete_jump_thread_path): Likewise.

From-SVN: r217804
parent 3b56f890
2014-11-19 David Malcolm <dmalcolm@redhat.com> 2014-11-19 David Malcolm <dmalcolm@redhat.com>
PR jit/63854 PR jit/63854
* tree-ssa-threadedge.c (thread_across_edge): Don't just release
"path", delete it.
* tree-ssa-threadupdate.c (delete_jump_thread_path): Likewise.
2014-11-19 David Malcolm <dmalcolm@redhat.com>
PR jit/63854
* tree-ssa-pre.c (do_regular_insertion): Convert "avail" from * tree-ssa-pre.c (do_regular_insertion): Convert "avail" from
vec<> to auto_vec<> to fix a leak. vec<> to auto_vec<> to fix a leak.
...@@ -1150,6 +1150,7 @@ thread_across_edge (gcond *dummy_cond, ...@@ -1150,6 +1150,7 @@ thread_across_edge (gcond *dummy_cond,
through the vector entries. */ through the vector entries. */
gcc_assert (path->length () == 0); gcc_assert (path->length () == 0);
path->release (); path->release ();
delete path;
/* A negative status indicates the target block was deemed too big to /* A negative status indicates the target block was deemed too big to
duplicate. Just quit now rather than trying to use the block as duplicate. Just quit now rather than trying to use the block as
......
...@@ -2481,6 +2481,7 @@ delete_jump_thread_path (vec<jump_thread_edge *> *path) ...@@ -2481,6 +2481,7 @@ delete_jump_thread_path (vec<jump_thread_edge *> *path)
for (unsigned int i = 0; i < path->length (); i++) for (unsigned int i = 0; i < path->length (); i++)
delete (*path)[i]; delete (*path)[i];
path->release(); path->release();
delete path;
} }
/* Register a jump threading opportunity. We queue up all the jump /* Register a jump threading opportunity. We queue up all the jump
......
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