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