This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Designs for better debug info in GCC
Hi,
On Fri, 23 Nov 2007, Alexandre Oliva wrote:
> On Nov 13, 2007, Michael Matz <matz@suse.de> wrote:
>
> > The nice thing is, that there are only few places which really get rid of
> > SETs: remove_insn. You have to tweak that to keep the information around,
> > not much else (though that claim remains to be proven :) ).
>
> And then, you have to tweak everything else to keep the note that
> replaced the set up to date as you further optimize the code.
No. remove_insn() would replace the SET with a note. It would look at
other SETs where the information could be put in which is lost. After
all, there must have been a reason for the SET to be deleted: the
destination is dead, hence whatever user-variables were associated with it
also are dead. (if they also lie in other places, those are not
affected). So it's okay to completely get rid of the SET and decl
associations.
One special case of the above is, when a SET is deleted which is a copy,
where the LHS was associated with some variables, but the RHS was not.
>From that point on we can (under certain circumstances) associate the RHS
with the decls (by changing it's initial SET).
Ciao,
Michael.