|
Currently, there is a lot of code in core/elflink that is not strictly
required for the core to function. There are benefits to keeping the
core proper as small as possible, for example so that it can fit
within a single 64K block on btrfs.
So move the following pieces of code out of core/elflink and into a
new ldlinux ELF module which will be automatically loaded by the core:
- command line interface code
- C configuration parser
- refstr implementation
- rest of the menu system
Below are some measurements of the size of ldlinux.elf before and
after this change.
Before:
text data bss dec hex filename
161328 10439 913468 1085235 108f33 core/ldlinux.elf
After:
text data bss dec hex filename
142423 10415 909500 1062338 1035c2 core/ldlinux.elf
Signed-off-by: Matt Fleming <matt.fleming@linux.intel.com>
|