Commit 4ccf8f43 by Jakub Jelinek Committed by Jakub Jelinek

re PR middle-end/56461 (GCC is leaking lots of memory)

	PR middle-end/56461
	* lra.c (lra): Call lra_clear_live_ranges if live_p,
	right before calling lra_create_live_ranges, also call it
	when clearing live_p.  Only call lra_clear_live_ranges
	at the end if live_p.

From-SVN: r196468
parent 334e71e8
2013-03-05 Jakub Jelinek <jakub@redhat.com>
PR middle-end/56461
* lra.c (lra): Call lra_clear_live_ranges if live_p,
right before calling lra_create_live_ranges, also call it
when clearing live_p. Only call lra_clear_live_ranges
at the end if live_p.
PR middle-end/56461
* sched-deps.c (delete_dep_node): Free DEP_REPLACE.
2013-03-05 Richard Biener <rguenther@suse.de>
......
......@@ -2291,6 +2291,8 @@ lra (FILE *f)
/* Do inheritance only for regular algorithms. */
if (! lra_simple_p)
lra_inheritance ();
if (live_p)
lra_clear_live_ranges ();
/* We need live ranges for lra_assign -- so build them. */
lra_create_live_ranges (true);
live_p = true;
......@@ -2308,6 +2310,8 @@ lra (FILE *f)
live_p = false;
if (lra_undo_inheritance ())
live_p = false;
if (! live_p)
lra_clear_live_ranges ();
}
}
bitmap_clear (&lra_optional_reload_pseudos);
......@@ -2334,7 +2338,8 @@ lra (FILE *f)
lra_eliminate (true);
lra_final_code_change ();
lra_in_progress = 0;
lra_clear_live_ranges ();
if (live_p)
lra_clear_live_ranges ();
lra_live_ranges_finish ();
lra_constraints_finish ();
finish_reg_info ();
......
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