[U-Boot] Relocation size penalty calculation
Graeme Russ
graeme.russ at gmail.com
Thu Oct 8 13:54:40 CEST 2009
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?
Regards,
Graeme
More information about the U-Boot
mailing list