SSA_NAMEs not always released
Jeffrey A Law
law@redhat.com
Thu Aug 25 16:22:00 GMT 2005
On Wed, 2005-08-24 at 18:19 -0400, Andrew Pinski wrote:
> I am writing a "quick and dirty" DCE pass which is faster the
> current DCE and does not do anything with stores/loads.
FWIW, I've always been a fan of a very very simple DCE pass
which can be scheduled often, possibly after every pass that
might expose significant amounts of dead code -- leaving the
heavier weight DCE pass to run just once or twice to pick
up the rest of the crud.
> It passes over all the live SSA_NAMEs by looping over ssa_name.
Which is not currently safe.
> But I am running into places where SSA_NAMEs not released when they
> become dead.
Which is why it's not really safe. We have never required SSA_NAMEs
to be released, we have only encouraged it to reduce memory consumption.
Currently any code must not assume that unused SSA_NAMEs have been
released.
Jeff
More information about the Gcc
mailing list