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    .ARM.exidx   :
41    {
42        __exidx_start = .;
43        *(.ARM.exidx* .gnu.linkonce.armexidx.*)
44        __exidx_end = .;
45    }
46
47    __rodata_start = .;
48    .rodata   : { *(.rodata) *(.rodata.*) }
49    __rodata_end = .;
50
51    . = ALIGN(4);
52    .ctors :
53    {
54        PROVIDE(__ctors_start__ = .);
55        KEEP(*(SORT(.ctors.*)))
56        KEEP(*(.ctors))
57        PROVIDE(__ctors_end__ = .);
58    }
59
60    .dtors :
61    {
62        PROVIDE(__dtors_start__ = .);
63        KEEP(*(SORT(.dtors.*)))
64        KEEP(*(.dtors))
65        PROVIDE(__dtors_end__ = .);
66    }
67
68    . = ALIGN(16 * 1024);
69    .l1_page_table :
70    {
71        __l1_page_table_start = .;
72        . += 16K;
73    }
74
75    . = ALIGN(8);
76    __data_start = .;
77    .data :
78    {
79        *(.data)
80        *(.data.*)
81    }
82    __data_end = .;
83
84    . = ALIGN(8);
85    __bss_start = .;
86    .bss       :
87    {
88    *(.bss)
89    *(.bss.*)
90    *(COMMON)
91    . = ALIGN(4);
92    }
93    . = ALIGN(4);
94    __bss_end = .;
95
96    /* Stabs debugging sections.  */
97    .stab 0 : { *(.stab) }
98    .stabstr 0 : { *(.stabstr) }
99    .stab.excl 0 : { *(.stab.excl) }
100    .stab.exclstr 0 : { *(.stab.exclstr) }
101    .stab.index 0 : { *(.stab.index) }
102    .stab.indexstr 0 : { *(.stab.indexstr) }
103    .comment 0 : { *(.comment) }
104
105    _end = .;
106}
107