public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Jason Molenda <jason-gcclist@molenda.com>
To: Devang Patel <dpatel@apple.com>, GCC Development <gcc@gcc.gnu.org>
Subject: Re: Reducing debug info for C++ ctors/dtors
Date: Tue, 12 Jul 2005 01:12:00 -0000	[thread overview]
Message-ID: <20050711181158.A10767@molenda.com> (raw)
In-Reply-To: <20050712005636.GA21559@nevyn.them.org>; from drow@false.org on Mon, Jul 11, 2005 at 08:56:36PM -0400

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

  reply	other threads:[~2005-07-12  1:12 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-07-12  0:37 Devang Patel
2005-07-12  0:56 ` Daniel Jacobowitz
2005-07-12  1:12   ` Jason Molenda [this message]
2005-07-12  1:18     ` Daniel Jacobowitz
2005-07-12  3:46       ` Jason Molenda
2005-07-13 18:42       ` Devang Patel
2005-07-13 18:45         ` Eric Christopher
2005-07-13 19:36           ` Mike Stump
2005-07-13 19:39             ` Eric Christopher
2005-07-13 21:05               ` Mike Stump
2005-07-13 22:11                 ` Eric Christopher

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20050711181158.A10767@molenda.com \
    --to=jason-gcclist@molenda.com \
    --cc=dpatel@apple.com \
    --cc=gcc@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).