From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 31643 invoked by alias); 8 Oct 2003 21:30:22 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 31635 invoked from network); 8 Oct 2003 21:30:21 -0000 Received: from unknown (HELO desire.geoffk.org) (12.235.88.42) by sources.redhat.com with SMTP; 8 Oct 2003 21:30:21 -0000 Received: (from geoffk@localhost) by desire.geoffk.org (8.11.6/8.11.6) id h98LUBg18921; Wed, 8 Oct 2003 14:30:11 -0700 X-Authentication-Warning: desire.geoffk.org: geoffk set sender to geoffk@geoffk.org using -f To: Daniel Berlin Cc: "gcc@gcc.gnu.org" , Diego Novillo Subject: Re: [tree-ssa] Garbage collector x bb annotations References: <20031006223141.GA2094@atrey.karlin.mff.cuni.cz> <1065619632.7057.44.camel@frodo.toronto.redhat.com> <20031008135344.GB18809@atrey.karlin.mff.cuni.cz> <2B078B03-F99A-11D7-BF76-000A95AF1FAE@dberlin.org> From: Geoff Keating Date: Wed, 08 Oct 2003 21:30:00 -0000 In-Reply-To: <2B078B03-F99A-11D7-BF76-000A95AF1FAE@dberlin.org> Message-ID: User-Agent: Gnus/5.0808 (Gnus v5.8.8) Emacs/20.7 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-SW-Source: 2003-10/txt/msg00293.txt.bz2 Daniel Berlin writes: > On Oct 8, 2003, at 9:53 AM, Zdenek Dvorak wrote: > > > Hello, > > > >>> I have just run into the following problem: dom_children get > >>> released by > >>> ggc_collect call in tree-ssa-pre. Allocating them by ggc seems > >>> wrong to > >>> me, since basic block annotations are allocated from obstack and > >>> invisible to garbage collector. > >>> > >> Yeah. But there's more than that, unfortunately. All the fields in > >> struct bb_ann_d are ggc allocated. The real solution would be to > >> finally convert basic blocks to ggc. Volunteers? > > > > I may try (I need it anyway for tree-ssa-cfg branch). The whole issue > > is however quite ugly as this combines basically all allocation > > mechanisms that are available in gcc (basic blocks themselves are pool > > allocated). > > They used to be obstack allocated, so consider yourself lucky :P. > > You could add a "fields_only" flag and modify gengtype to not mark the > actual bb, only it's fields. This won't work, since bb structures refer to each other. -- - Geoffrey Keating