ARM Mapfile

Francis Cagney private@fcagney.com
Wed Mar 31 17:51:00 GMT 2004


I'm trying to squeeze how much ram my software will need, and am confused 
by the output of the mapfile from the gnu compiler/linker.
I also haven't been able to find a mapfile description anywhere.

If I do a grep for one of my modules tisoft on the mapfile I get

TIKeyDown           0x4               tisoft.o
TIKeyUp             0x4               tisoft.o
TIKeyNumber         0x4               tisoft.o
TIKeyGreen          0x4               tisoft.o
TIKeyLeft           0x4               tisoft.o
TIKeyRed            0x4               tisoft.o
TIKeyRight          0x4               tisoft.o
LOAD tisoft.o
  .text          0x000138f4       0x80 tisoft.o
  .rodata        0x00026584      0x284 tisoft.o
  .data          0x0002eee8       0x1c tisoft.o
  COMMON         0x000312e0       0xc4 tisoft.o
  .comment       0x0000019e       0x12 tisoft.o

The first 7 hits are the global variables each taking 4 bytes.
LOAD is uninteresting
The .text is the code taking 0x80 bytes
.rodata is the initialised tables, read only taking 0x284 bytes
I think .data is the static variables taking 0x1c bytes

COMMON does not seem to relate to anything ?
.comment is the same for all modules 0x12 bytes

Fianlly other modules have a .bss entry which seems to have to do with data 
size also
  .bss           0x0002f77c      0x914 ddmain.o
  .bss           0x00030090        0x8 dgmain.o
  .bss           0x00030098        0x8 hyena.o
  .bss           0x000300a0       0x38 hyenadsp.o
  .bss           0x000300d8        0x8 hyenaprs.o
  .bss           0x000300e0      0x3e8 tihelp.o
  .bss           0x000304c8       0x32 uigenie.o

Can I  to calculate the usage of each module.by adding: .text, and .rodata 
to get ROM size, and .data, and sum the global variables to get RAM size, 
and ignoring the rest ?
Or what parameters do I need to decide ram, and read only memory requirements ?



Francis Cagney
Tel +49 160 5249769
-------------- next part --------------

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.634 / Virus Database: 406 - Release Date: 18.03.2004


More information about the Gcc-help mailing list