mipsel-linux-gcc:the alignment of segment is 64k,it's too big!
qinghua fan
fanqh0820@gmail.com
Tue Aug 14 07:53:00 GMT 2007
I used mipsel-linux-gcc to compile my project,but I found the fact
that the final elf file is more larger than the one built with
mips-elf-gcc.
I have found the fact that the alignment of the segment is
0x10000!(64K),as following:
Section Headers:
[Nr] Name Type Addr Off Size ES Flg Lk Inf Al
[ 0] NULL 00000000 000000 000000 00 0 0 0
[ 1] .text PROGBITS 80000000 010000 010a40 00 AX
0 0 16
[ 2] .data PROGBITS 80010a40 020a40 000310 00 WA 0 0 16
[ 3] .bss NOBITS 80010d50 020d50 0011a0 00 WA 0 0 16
[ 4] .reginfo MIPS_REGINFO 80011ef0 021ef0 000018 18 A
0 0 4
[ 5] .pdr PROGBITS 00000000 021f08 003000 00 0 0 4
[ 6] .mdebug.abi32 PROGBITS 00000000 024f08 000000 00 0 0 1
[ 7] .debug_abbrev MIPS_DWARF 00000000 024f08 001e43 00
0 0 1
[ 8] .debug_info MIPS_DWARF 00000000 026d4b 009647 00 0 0 1
[ 9] .debug_line MIPS_DWARF 00000000 030392 0021ce 00 0 0 1
[10] .debug_frame MIPS_DWARF 00000000 032560 001d48 00
0 0 4
[11] .debug_pubnames MIPS_DWARF 00000000 0342a8 0012f4 00 0 0 1
[12] .debug_aranges MIPS_DWARF 00000000 0355a0 0003e0 00 0 0 8
[13] .debug_str MIPS_DWARF 00000000 035980 000322 00
0 0 1
[14] .comment PROGBITS 00000000 035ca2 0001d4 00 0 0 1
[15] .shstrtab STRTAB 00000000 035e76 0000ae 00 0 0 1
[16] .symtab SYMTAB 00000000 0361f4 002b20 10
17 112 4
[17] .strtab STRTAB 00000000 038d14 001f66 00 0 0 1
Key to Flags:
W (write), A (alloc), X (execute), M (merge), S (strings)
I (info), L (link order), G (group), x (unknown)
O (extra OS processing required) o (OS specific), p (processor specific)
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
REGINFO 0x021ef0 0x80011ef0 0x80011ef0 0x00018 0x00018 R 0x4
LOAD 0x010000 0x80000000 0x80000000 0x10d50 0x11ef0 RWE 0x10000
LOAD 0x021ef0 0x80011ef0 0x80011ef0 0x00018 0x00018 R 0x10000
Section to Segment mapping:
Segment Sections...
00 .reginfo
01 .text .data .bss
02 .reginfo
Because the Linux page size is 4K(0x1000),how can I modify the segment
alignment to ox1000?
Help me!
More information about the Gcc-help
mailing list