1OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm") 2OUTPUT_ARCH(arm) 3ENTRY(entry) 4SECTIONS 5{ 6 . = 0x20000000; 7 entry = .; 8 9 . = ALIGN(4); 10 .text : 11 { 12 *(.init) 13 *(.text) 14 *(.gnu.linkonce.t*) 15 16 /* section information for finsh shell */ 17 . = ALIGN(4); 18 __fsymtab_start = .; 19 KEEP(*(FSymTab)) 20 __fsymtab_end = .; 21 . = ALIGN(4); 22 __vsymtab_start = .; 23 KEEP(*(VSymTab)) 24 __vsymtab_end = .; 25 . = ALIGN(4); 26 27 . = ALIGN(4); 28 __rt_init_start = .; 29 KEEP(*(SORT(.rti_fn*))) 30 __rt_init_end = .; 31 . = ALIGN(4); 32 33 /* section information for modules */ 34 . = ALIGN(4); 35 __rtmsymtab_start = .; 36 KEEP(*(RTMSymTab)) 37 __rtmsymtab_end = .; 38 } 39 40 . = ALIGN(4); 41 .rodata : { *(.rodata) *(.rodata.*) *(.gnu.linkonce.r*) *(.eh_frame) } 42 43 . = ALIGN(4); 44 .ctors : 45 { 46 PROVIDE(__ctors_start__ = .); 47 KEEP(*(SORT(.ctors.*))) 48 KEEP(*(.ctors)) 49 PROVIDE(__ctors_end__ = .); 50 } 51 52 .dtors : 53 { 54 PROVIDE(__dtors_start__ = .); 55 KEEP(*(SORT(.dtors.*))) 56 KEEP(*(.dtors)) 57 PROVIDE(__dtors_end__ = .); 58 } 59 60 . = ALIGN(4); 61 .data : 62 { 63 *(.data) 64 *(.data.*) 65 *(.gnu.linkonce.d*) 66 } 67 68 . = ALIGN(4); 69 .nobss : { *(.nobss) } 70 71 . = ALIGN(4); 72 __bss_start__ = .; 73 .bss : { *(.bss)} 74 __bss_end__ = .; 75 76 /* stabs debugging sections. */ 77 .stab 0 : { *(.stab) } 78 .stabstr 0 : { *(.stabstr) } 79 .stab.excl 0 : { *(.stab.excl) } 80 .stab.exclstr 0 : { *(.stab.exclstr) } 81 .stab.index 0 : { *(.stab.index) } 82 .stab.indexstr 0 : { *(.stab.indexstr) } 83 .comment 0 : { *(.comment) } 84 .debug_abbrev 0 : { *(.debug_abbrev) } 85 .debug_info 0 : { *(.debug_info) } 86 .debug_line 0 : { *(.debug_line) } 87 .debug_pubnames 0 : { *(.debug_pubnames) } 88 .debug_aranges 0 : { *(.debug_aranges) } 89 90 _end = .; 91} 92