From: Peter Tyser <ptyser@xes-inc.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] Relocation size penalty calculation
Date: Thu, 08 Oct 2009 09:14:19 -0500 [thread overview]
Message-ID: <1255011259.9100.1069.camel@localhost.localdomain> (raw)
In-Reply-To: <d66caabb0910080454g15ff09d5n457d047a595b3a92@mail.gmail.com>
On Thu, 2009-10-08 at 22:54 +1100, Graeme Russ wrote:
> Out of curiosity, I wanted to see just how much of a size penalty I am
> incurring by using gcc -fpic / ld -pic on my x86 u-boot build. Here are
> the results (fixed width font will help - its space, not tab, formatted):
>
> Section non-reloc reloc
> ---------------------------------------
> .text 000118c4 000137fc <- 0x1f38 bytes (~8kB) bigger
> .rodata 00005bad 000059d0
> .interp n/a 00000013
> .dynstr n/a 00000648
> .hash n/a 00000428
> .eh_frame 00003268 000034fc
> .data 00000a6c 000001dc
> .data.rel n/a 00000098
> .data.rel.ro.local n/a 00000178
> .data.rel.local n/a 000007e4
> .got 00000000 000001f0
> .got.plt n/a 0000000c
> .rel.got n/a 000003e0
> .rel.dyn n/a 00001228
> .dynsym n/a 00000850
> .dynamic n/a 00000080
> .u_boot_cmd 000003c0 000003c0
> .bss 00001a34 00001a34
> .realmode 00000166 00000166
> .bios 0000053e 0000053e
> =======================================
> Total 0001d5dd 00022287 <- 0x4caa bytes (~19kB) bigger
>
> Its more than a 16% increase in size!!!
>
> .text accounts for a little under half of the total bloat, and of that,
> the crude dynamic loader accounts for only 341 bytes
>
> Have any metrics been done for PPC?
Things actually improve a little bit when we use -mrelocatable and get
rid of all the manual "+= gd->reloc_off" fixups:
1) Top of mainline on XPedite5370:
text data bss dec hex filename
308612 24488 33172 366272 596c0 u-boot
2) Top of "reloc" branch on XPedite5370 (ie -mrelocatable):
text data bss dec hex filename
303704 28644 33156 365504 593c0 u-boot
For fun:
3) #2 but with s/-mrelocatable/-fpic/ (probably doesn't boot):
text data bss dec hex filename
303704 24472 33156 361332 58374 u-boot
There may be some other changes that affect the size between mainline
and "reloc", but their sizes are in the same general ballpark.
Best,
Peter
next prev parent reply other threads:[~2009-10-08 14:14 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-10-08 11:54 [U-Boot] Relocation size penalty calculation Graeme Russ
2009-10-08 14:14 ` Peter Tyser [this message]
2009-10-08 15:53 ` J. William Campbell
2009-10-08 16:15 ` Peter Tyser
2009-10-08 16:50 ` J. William Campbell
2009-10-08 15:58 ` J. William Campbell
2009-10-08 20:58 ` Graeme Russ
2009-10-08 21:23 ` Wolfgang Denk
2009-10-08 22:02 ` Graeme Russ
2009-10-08 22:20 ` Peter Tyser
2009-10-09 1:25 ` Mike Frysinger
2009-10-09 1:43 ` Graeme Russ
2009-10-08 22:27 ` J. William Campbell
2009-10-08 22:39 ` Graeme Russ
2009-10-08 23:12 ` Joakim Tjernlund
2009-10-09 0:09 ` J. William Campbell
2009-10-10 4:43 ` Graeme Russ
2009-10-10 8:07 ` Joakim Tjernlund
2009-10-10 8:46 ` Graeme Russ
2009-10-10 9:27 ` Joakim Tjernlund
2009-10-10 10:38 ` Graeme Russ
2009-10-10 10:47 ` Joakim Tjernlund
2009-10-10 11:21 ` Graeme Russ
2009-10-10 15:38 ` Joakim Tjernlund
2009-10-11 10:47 ` Graeme Russ
[not found] ` <OF83D1271F.04B67606-ONC125764C.0045BFF2-C125764C.0046AC45@transmode.se>
2009-10-13 11:21 ` Graeme Russ
2009-10-13 11:53 ` Joakim Tjernlund
2009-10-13 16:30 ` J. William Campbell
2009-10-13 16:55 ` Joakim Tjernlund
2009-10-13 20:06 ` Graeme Russ
[not found] ` <OF32A18F38.511FF11C-ONC125764E.00750716-C125764E.007534EE@ <4AD511E4.9090204@comcast.net>
2009-10-13 21:20 ` Joakim Tjernlund
2009-10-13 23:48 ` J. William Campbell
2009-10-14 7:25 ` Joakim Tjernlund
2009-10-14 11:48 ` Graeme Russ
2009-10-14 12:38 ` Joakim Tjernlund
2009-10-14 16:45 ` J. William Campbell
2009-10-17 5:17 ` Graeme Russ
2009-10-17 12:32 ` Joakim Tjernlund
2009-10-17 12:59 ` J. William Campbell
2009-10-17 21:29 ` Graeme Russ
2009-10-14 15:35 ` J. William Campbell
2009-10-14 16:05 ` Joakim Tjernlund
2009-10-14 16:49 ` J. William Campbell
[not found] ` <4AD0B3D7.7020900@comcast.net>
2009-10-11 1:31 ` Graeme Russ
2009-10-10 16:52 ` Mike Frysinger
2009-10-10 17:45 ` Joakim Tjernlund
2009-10-11 0:43 ` Graeme Russ
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=1255011259.9100.1069.camel@localhost.localdomain \
--to=ptyser@xes-inc.com \
--cc=u-boot@lists.denx.de \
/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