This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: SSA_NAMEs not always released
- From: Jeffrey A Law <law at redhat dot com>
- To: Andrew Pinski <pinskia at physics dot uc dot edu>
- Cc: gcc mailing list <gcc at gcc dot gnu dot org>
- Date: Thu, 25 Aug 2005 10:01:33 -0600
- Subject: Re: SSA_NAMEs not always released
- References: <7972889cc216524503e2bc58195f64a4@physics.uc.edu>
- Reply-to: law at redhat dot com
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