This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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!


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]