1OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm") 2OUTPUT_ARCH(arm) 3 4SECTIONS 5{ 6 . = 0x80100000; 7 8 __text_start = .; 9 .text : 10 { 11 *(.vectors) 12 *(.text) 13 *(.text.*) 14 15 /* section information for finsh shell */ 16 . = ALIGN(4); 17 __fsymtab_start = .; 18 KEEP(*(FSymTab)) 19 __fsymtab_end = .; 20 . = ALIGN(4); 21 __vsymtab_start = .; 22 KEEP(*(VSymTab)) 23 __vsymtab_end = .; 24 . = ALIGN(4); 25 26 /* section information for modules */ 27 . = ALIGN(4); 28 __rtmsymtab_start = .; 29 KEEP(*(RTMSymTab)) 30 __rtmsymtab_end = .; 31 32 /* section information for initialization */ 33 . = ALIGN(4); 34 __rt_init_start = .; 35 KEEP(*(SORT(.rti_fn*))) 36 __rt_init_end = .; 37 } =0 38 __text_end = .; 39 40 __rodata_start = .; 41 .rodata : { *(.rodata) *(.rodata.*) } 42 __rodata_end = .; 43 44 . = ALIGN(4); 45 .ctors : 46 { 47 PROVIDE(__ctors_start__ = .); 48 KEEP(*(SORT(.ctors.*))) 49 KEEP(*(.ctors)) 50 PROVIDE(__ctors_end__ = .); 51 } 52 53 .dtors : 54 { 55 PROVIDE(__dtors_start__ = .); 56 KEEP(*(SORT(.dtors.*))) 57 KEEP(*(.dtors)) 58 PROVIDE(__dtors_end__ = .); 59 } 60 61 . = ALIGN(16 * 1024); 62 .l1_page_table : 63 { 64 __l1_page_table_start = .; 65 . += 16K; 66 } 67 68 . = ALIGN(8); 69 __data_start = .; 70 .data : 71 { 72 *(.data) 73 *(.data.*) 74 } 75 __data_end = .; 76 77 . = ALIGN(8); 78 __bss_start = .; 79 .bss : 80 { 81 *(.bss) 82 *(.bss.*) 83 *(COMMON) 84 . = ALIGN(4); 85 } 86 . = ALIGN(4); 87 __bss_end = .; 88 89 /* Stabs debugging sections. */ 90 .stab 0 : { *(.stab) } 91 .stabstr 0 : { *(.stabstr) } 92 .stab.excl 0 : { *(.stab.excl) } 93 .stab.exclstr 0 : { *(.stab.exclstr) } 94 .stab.index 0 : { *(.stab.index) } 95 .stab.indexstr 0 : { *(.stab.indexstr) } 96 .comment 0 : { *(.comment) } 97 98 _end = .; 99} 100