This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
stabs/dwarf size comparison on CSiBE (Was: stabs support in binutils, gcc, and gdb)
- From: Steven Bosscher <stevenb dot gcc at gmail dot com>
- To: binutils at sourceware dot org
- Cc: Andreas Schwab <schwab at linux-m68k dot org>, David Taylor <dtaylor at emc dot com>, Doug Evans <dje at google dot com>, nick clifton <nickc at redhat dot com>, gcc at gcc dot gnu dot org, gdb <gdb at sourceware dot org>
- Date: Tue, 15 Jan 2013 11:09:46 +0100
- Subject: stabs/dwarf size comparison on CSiBE (Was: stabs support in binutils, gcc, and gdb)
Hello,
In this stabs vs. dwarf discussion, so far it's more been about
assumptions than numbers. So let's throw in some numbers!
The following debug sizes are for CSiBE-v2.1.1 on mipsisa64-elf, with
the LRA branch at r195108. All CSiBE test cases are packages written
in C.
Debug size is computed as the total size of all ".stabs*" or ".debug*"
sections as computed by "size -A" (sysv style size output) on
individual object files (so before linking) and summed up by awk (*).
Tested debug formats are "none", "stabs", "dwarf2", and "dwarf4".
Compiler options were "-Os" for all four tested debug formats. Debug
info was output with "-gstabs", "-gdwarf-2", and "-gdwarf-4".
And the results are:
package stabs dwarf2 dwarf4
bzip2-1.0.2 372772 289386 279670
cg_compiler... 1355948 1381734 1314676
compiler 152178 156644 148458
flex-2.5.31 665588 511856 488256
jikespg-1.3 944126 773358 749050
jpeg-6b 3285854 2186640 2110290
libmspack 602692 421792 407070
libpng-1.2.5 1064722 1017116 975098
linux-2.4.23... 53617230 40921246 38353402
lwip-0.5.3... 576260 402830 381902
mpeg2dec-0.3.1 492918 336912 327072
mpgcut-1.1 46956 51854 49490
OpenTCP-1.0.4 873008 223646 212822
replaypc-0.4... 1009322 445296 424136
teem-1.6.0-src 13374436 7259308 6954802
ttt-0.10.1... 208516 113828 109776
unrarlib-0.4.0 91236 79396 75256
zlib-1.1.4 280272 201392 193506
TOTAL 79014034 56774234 53554732
DEBUG/TEXT 16.49 11.85 11.18
(*) the test script actually takes the sum of sizes for all ".text*",
".stabs*", and ".debug*" sections, and the ".text*" size is subtracted
to get the debug info sizes.
Unless someone can shoot holes in this test approach, the results
suggest that DWARF debug size is *smaller* than stabs, at least for
mipsisa64.
Ciao!
Steven