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