From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9848 invoked by alias); 15 Jan 2004 16:25:32 -0000 Mailing-List: contact gdb-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sources.redhat.com Received: (qmail 9841 invoked from network); 15 Jan 2004 16:25:32 -0000 Received: from unknown (HELO nevyn.them.org) (66.93.172.17) by sources.redhat.com with SMTP; 15 Jan 2004 16:25:32 -0000 Received: from drow by nevyn.them.org with local (Exim 4.30 #1 (Debian)) id 1AhAJH-0000kL-TP for ; Thu, 15 Jan 2004 11:25:31 -0500 Date: Thu, 15 Jan 2004 16:25:00 -0000 From: Daniel Jacobowitz To: gdb@sources.redhat.com Subject: Re: [Fwd: Re: c++/1512: no canonical way to output names of C++ types] Message-ID: <20040115162531.GA2815@nevyn.them.org> Mail-Followup-To: gdb@sources.redhat.com References: <4006BD4E.4050007@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4006BD4E.4050007@gnu.org> User-Agent: Mutt/1.5.1i X-SW-Source: 2004-01/txt/msg00199.txt.bz2 On Thu, Jan 15, 2004 at 11:18:22AM -0500, Andrew Cagney wrote: > > Fixes for this are in progress on drow-cplus-branch. All the necessary > > code is there, it just needs to be hooked up :) I think I've gotten > > derailed on some other problems first, though. The basic problem is > > that we want to canonicalize the names before adding them to the symbol > > table, and that increases startup time. I'm looking for ways to shave > > startup time elsewhere. I have a few ideas. > > If it is going to be so expensive, can it be put off until later, when > the canonical value is needed? Possibly. We search for the canonical form in the symbol table, which means we need to canonicalize before adding them to the (partial, full, maybe minimal also) symbol table. The trick will be delaying the add-to-symbol-table until the symbol is needed, using a clever trick suggested by Ian - keeping a list of pending symbols by basename, basically. There are some complications. Particuarly, the code to infer classes' fully qualified names depends on having the canonical demangled name available. I may be able to do something about this but I'm not sure what yet. -- Daniel Jacobowitz MontaVista Software Debian GNU/Linux Developer