This is the mail archive of the
mailing list for the GCC project.
Re: A question about df
On 10/24/07, Revital1 Eres <ERES@il.ibm.com> wrote:
> > > The problem arises when we delete an insn from the df that contains a
> > > use but do not update the def-use chain of it's def as we do not have
> > > the use-def chain to reach it's def, This later causes a problem when
> > > we try to dump the def-use chain of it's def.
> > I'm sorry but I don't understand the description of the problem.
> > What do you mean by "dump" and what problem does this "dump" cause ?
> By dump I mean printing the function including all the DU chain info
> (in TODO_dump_func at the end of the pass). This causes a problem in
> our case becuase an insn with a use was deleted (in df_insn_delete)
> without unlinking it from the def-use chain of it's def (because we
> can not access the def using a use-def chain - we do not build it).
> Once we want to print the def's def-use chain we get an ICE. Hope this
> explains the problem better.
I see. You're right, however, once an insn is deleted,
the chain is not correct anyway (e.g. deleting an insn
could expose a def to reach new uses that it didn't reach before)
and it seems incorrect to keep using the chain without rebuilding them.