]>
Commit | Line | Data |
---|---|---|
1da177e4 | 1 | #include <asm-generic/vmlinux.lds.h> |
b2b5d37d | 2 | #include <asm/page.h> |
1da177e4 LT |
3 | |
4 | OUTPUT_FORMAT("elf64-alpha") | |
5 | OUTPUT_ARCH(alpha) | |
6 | ENTRY(__start) | |
caf45dd9 | 7 | PHDRS { kernel PT_LOAD; note PT_NOTE; } |
1da177e4 LT |
8 | jiffies = jiffies_64; |
9 | SECTIONS | |
10 | { | |
11 | #ifdef CONFIG_ALPHA_LEGACY_START_ADDRESS | |
b2b5d37d | 12 | . = 0xfffffc0000310000; |
1da177e4 | 13 | #else |
b2b5d37d | 14 | . = 0xfffffc0001010000; |
1da177e4 LT |
15 | #endif |
16 | ||
b2b5d37d SR |
17 | _text = .; /* Text and read-only data */ |
18 | .text : { | |
ed5f6561 | 19 | *(.text.head) |
b2b5d37d SR |
20 | TEXT_TEXT |
21 | SCHED_TEXT | |
22 | LOCK_TEXT | |
23 | *(.fixup) | |
24 | *(.gnu.warning) | |
25 | } :kernel | |
26 | _etext = .; /* End of text section */ | |
27 | ||
51597acf BB |
28 | NOTES :kernel :note |
29 | .dummy : { | |
30 | *(.dummy) | |
31 | } :kernel | |
32 | ||
33 | RODATA | |
34 | ||
b2b5d37d SR |
35 | /* Exception table */ |
36 | . = ALIGN(16); | |
37 | __ex_table : { | |
38 | __start___ex_table = .; | |
39 | *(__ex_table) | |
40 | __stop___ex_table = .; | |
41 | } | |
42 | ||
b2b5d37d SR |
43 | /* Will be freed after init */ |
44 | . = ALIGN(PAGE_SIZE); | |
45 | /* Init code and data */ | |
46 | __init_begin = .; | |
47 | .init.text : { | |
48 | _sinittext = .; | |
01ba2bdc | 49 | INIT_TEXT |
b2b5d37d SR |
50 | _einittext = .; |
51 | } | |
52 | .init.data : { | |
01ba2bdc | 53 | INIT_DATA |
b2b5d37d SR |
54 | } |
55 | ||
56 | . = ALIGN(16); | |
57 | .init.setup : { | |
58 | __setup_start = .; | |
59 | *(.init.setup) | |
60 | __setup_end = .; | |
61 | } | |
62 | ||
63 | . = ALIGN(8); | |
64 | .initcall.init : { | |
65 | __initcall_start = .; | |
66 | INITCALLS | |
67 | __initcall_end = .; | |
68 | } | |
1da177e4 | 69 | |
67d38229 | 70 | #ifdef CONFIG_BLK_DEV_INITRD |
b2b5d37d SR |
71 | . = ALIGN(PAGE_SIZE); |
72 | .init.ramfs : { | |
73 | __initramfs_start = .; | |
74 | *(.init.ramfs) | |
75 | __initramfs_end = .; | |
76 | } | |
67d38229 | 77 | #endif |
1da177e4 | 78 | |
b2b5d37d SR |
79 | . = ALIGN(8); |
80 | .con_initcall.init : { | |
81 | __con_initcall_start = .; | |
82 | *(.con_initcall.init) | |
83 | __con_initcall_end = .; | |
84 | } | |
85 | ||
86 | . = ALIGN(8); | |
87 | SECURITY_INIT | |
88 | ||
89 | PERCPU(PAGE_SIZE) | |
90 | ||
91 | . = ALIGN(2 * PAGE_SIZE); | |
92 | __init_end = .; | |
93 | /* Freed after init ends here */ | |
94 | ||
95 | /* Note 2 page alignment above. */ | |
96 | .data.init_thread : { | |
97 | *(.data.init_thread) | |
98 | } | |
99 | ||
100 | . = ALIGN(PAGE_SIZE); | |
101 | .data.page_aligned : { | |
102 | *(.data.page_aligned) | |
103 | } | |
104 | ||
105 | . = ALIGN(64); | |
106 | .data.cacheline_aligned : { | |
107 | *(.data.cacheline_aligned) | |
108 | } | |
109 | ||
110 | _data = .; | |
111 | /* Data */ | |
112 | .data : { | |
113 | DATA_DATA | |
114 | CONSTRUCTORS | |
115 | } | |
116 | ||
117 | .got : { | |
118 | *(.got) | |
119 | } | |
120 | .sdata : { | |
121 | *(.sdata) | |
122 | } | |
123 | _edata = .; /* End of data section */ | |
124 | ||
125 | __bss_start = .; | |
126 | .sbss : { | |
127 | *(.sbss) | |
128 | *(.scommon) | |
129 | } | |
130 | .bss : { | |
131 | *(.bss) | |
132 | *(COMMON) | |
133 | } | |
134 | __bss_stop = .; | |
135 | _end = .; | |
136 | ||
137 | /* Sections to be discarded */ | |
138 | /DISCARD/ : { | |
01ba2bdc SR |
139 | EXIT_TEXT |
140 | EXIT_DATA | |
b2b5d37d SR |
141 | *(.exitcall.exit) |
142 | } | |
143 | ||
144 | .mdebug 0 : { | |
145 | *(.mdebug) | |
146 | } | |
147 | .note 0 : { | |
148 | *(.note) | |
149 | } | |
150 | ||
151 | STABS_DEBUG | |
152 | DWARF_DEBUG | |
1da177e4 | 153 | } |