Advise needed on varasm.c constant recording bug
Geoff Keating
geoffk@geoffk.org
Mon Dec 31 17:43:00 GMT 2001
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>
More information about the Gcc
mailing list