This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
mipsel-linux-gcc:the alignment of segment is 64k,it's too big!
- From: "qinghua fan" <fanqh0820 at gmail dot com>
- To: gcc-help at gcc dot gnu dot org
- Date: Tue, 14 Aug 2007 15:53:22 +0800
- Subject: mipsel-linux-gcc:the alignment of segment is 64k,it's too big!
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!