Date: prev next · Thread: first prev next last
2011 Archives by date, by thread · List index


"Stephan" == Stephan Bergmann <sbergman@redhat.com> writes:

Stephan> On 11/30/2011 05:37 PM, Lionel Elie Mamane wrote:
Any opinion about this patch? I have it in my local repo, and it helps
me when running under gdb, as gdb now knows about macros!

Stephan> Would -ggdb3 excessively increase object size compared to -ggdb2?

The short answer is yes, but there is a more complicated answer.

First, one must consider the tradeoffs.  I always use -g3 when building
gdb, because gdb uses macros fairly heavily, and because I just don't
care about the extra space.  I prefer the convenience.  YMMV of course,
and I don't know enough about LibreOffice to offer an opinion.

In a recent-enough GCC (I don't know if it made 4.6, but anyway I think
it is in Fedora 16), there is a GNU extension to how macro information
is represented.  This extension greatly reduces the size of the macro
information.

If you really want to shrink debuginfo, use -gdwarf-4 and
-fdebug-types-section.  The former has been in GCC for a while, I don't
remember when the latter was added.  These options cause debuginfo for
most big types to be shared across compilation units, a huge size win.
This also makes gdb use less memory.

The downside of this feature is that not all tools have been upgraded to
understand it.  gdb works fine, but the 7 dwarves, and systemtap, and I
think valgrind, will barf.  They will all come around eventually, though
I am not sure when.

Tom

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.