From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 27806 invoked by alias); 12 Jul 2005 01:12:04 -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 27793 invoked by uid 22791); 12 Jul 2005 01:12:00 -0000 Received: from molenda.com (HELO molenda.com) (192.220.74.81) by sourceware.org (qpsmtpd/0.30-dev) with ESMTP; Tue, 12 Jul 2005 01:12:00 +0000 Received: (qmail 12057 invoked by uid 19025); 12 Jul 2005 01:11:58 -0000 Date: Tue, 12 Jul 2005 01:12:00 -0000 From: Jason Molenda To: Devang Patel , GCC Development Subject: Re: Reducing debug info for C++ ctors/dtors Message-ID: <20050711181158.A10767@molenda.com> References: <20050712005636.GA21559@nevyn.them.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5.1i In-Reply-To: <20050712005636.GA21559@nevyn.them.org>; from drow@false.org on Mon, Jul 11, 2005 at 08:56:36PM -0400 X-SW-Source: 2005-07/txt/msg00475.txt.bz2 On Mon, Jul 11, 2005 at 08:56:36PM -0400, Daniel Jacobowitz wrote: > > However, it is good enough to have > > > > .stabs "Base1:Tt(0,41)=s4x:(0,9),0,32;getx::(0,44)=#(0,41), > > (0,9),(0,43)=*(0,41),(0,36);:_ZN5Base14getxEv;2A.;;",128,0,1,0 > Eh, no. You have just lost any information about what constructors > were declared in the class. Yeah, Devang didn't present what we're doing here on the debug side too well. We're giving up a bit of information from within gdb -- it won't know what constructors and destructors a class has defined -- for a large savings in debug info (this can be over 20% of an application's debug info when lots of templates are in heavy use). Because the FUN stabs are still present, gdb knows about the constructors; it can step into them, it can set breakpoints on them. For most developers, this isn't a worthwhile tradeoff, but for a certain class of appliations the stabs debug info is enormous and this helps to ameloriate that by giving up a small bit of gdb functionality. This won't be enabled by default even within Apple, but it is a useful option to have available. Jason