This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Advise needed on varasm.c constant recording bug
- From: Geoff Keating <geoffk at geoffk dot org>
- To: kenner at vlsi1 dot ultra dot nyu dot edu (Richard Kenner)
- Cc: gcc at gcc dot gnu dot org
- Date: 31 Dec 2001 17:10:24 -0800
- Subject: Re: Advise needed on varasm.c constant recording bug
- References: <10112312342.AA15359@vlsi1.ultra.nyu.edu>
- Reply-to: Geoff Keating <geoffk at redhat dot com>
kenner@vlsi1.ultra.nyu.edu (Richard Kenner) writes:
> It's just as "theoretical" as any other GC bug. That is to say,
> not theoretical at all. You should be able to make such a test
> case fail by using "--enable-checking=gcac".
>
> No, I don't think so. You misunderstand: the bug is not that freed
> memory is referenced, it isn't. The bug is that the code assumes that if two
> addresses are the same, the types must be. This can only happen if memory
> was in fact reused for a later type and two aggregate constants are made,
> with the same values for each field and also with the type node at the
> same address.
If the types can still be referenced, they shouldn't be garbage
collected; if they're not garbage collected, the memory can't be
reused.
--
- Geoffrey Keating <geoffk@geoffk.org> <geoffk@redhat.com>