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>
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
vec<> to auto_vec<> to fix a leak.
......@@ -1150,6 +1150,7 @@ thread_across_edge (gcond *dummy_cond,
through the vector entries. */
gcc_assert (path->length () == 0);
path->release ();
delete path;
/* A negative status indicates the target block was deemed too big to
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)
for (unsigned int i = 0; i < path->length (); i++)
delete (*path)[i];
path->release();
delete path;
}
/* 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