]>
Commit | Line | Data |
---|---|---|
4aa2768b JW |
1 | /* Default linker script, for normal executables */ |
2 | OUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm", | |
3 | "elf32-littlearm") | |
4 | OUTPUT_ARCH(arm) | |
5 | ENTRY(_start) | |
6 | /* Do we need any of these for elf? | |
7 | __DYNAMIC = 0; */ | |
8 | SECTIONS | |
9 | { | |
10 | /* Read-only sections, merged into text segment: */ | |
11 | PROVIDE (__executable_start = 0x0000); . = 0x0000; | |
12 | ||
13 | .text : | |
14 | { | |
15 | *(.text .stub .text.* .gnu.linkonce.t.*) | |
16 | KEEP (*(.text.*personality*)) | |
17 | /* .gnu.warning sections are handled specially by elf32.em. */ | |
18 | *(.gnu.warning) | |
19 | *(.glue_7t) *(.glue_7) | |
20 | } =0 | |
21 | PROVIDE (__etext = .); | |
22 | PROVIDE (_etext = .); | |
23 | PROVIDE (etext = .); | |
24 | .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } | |
25 | .data : | |
26 | { | |
27 | __data_start = . ; | |
28 | *(.data .data.* .gnu.linkonce.d.*) | |
29 | KEEP (*(.gnu.linkonce.d.*personality*)) | |
30 | SORT(CONSTRUCTORS) | |
31 | } | |
32 | _edata = .; | |
33 | PROVIDE (edata = .); | |
34 | __bss_start = .; | |
35 | __bss_start__ = .; | |
36 | .bss : | |
37 | { | |
38 | *(.dynbss) | |
39 | *(.bss .bss.* .gnu.linkonce.b.*) | |
40 | *(COMMON) | |
41 | /* Align here to ensure that the .bss section occupies space up to | |
42 | _end. Align after .bss to ensure correct alignment even if the | |
43 | .bss section disappears because there are no input sections. */ | |
44 | . = ALIGN(32 / 8); | |
45 | } | |
46 | . = ALIGN(32 / 8); | |
47 | _end = .; | |
48 | _bss_end__ = . ; __bss_end__ = . ; __end__ = . ; | |
49 | PROVIDE (end = .); | |
50 | .stack : | |
51 | { | |
52 | _stack = .; | |
53 | *(.stack) | |
54 | } | |
55 | } |