Commit | Line | Data |
---|---|---|
b2441318 | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
441110a5 KC |
2 | |
3 | #define EMITS_PT_NOTE | |
172c8b85 | 4 | #define RO_EXCEPTION_TABLE_ALIGN 16 |
441110a5 | 5 | |
1da177e4 | 6 | #include <asm-generic/vmlinux.lds.h> |
de078ef5 | 7 | #include <asm/thread_info.h> |
0f06c063 | 8 | #include <asm/cache.h> |
b2b5d37d | 9 | #include <asm/page.h> |
ec221208 | 10 | #include <asm/setup.h> |
1da177e4 LT |
11 | |
12 | OUTPUT_FORMAT("elf64-alpha") | |
13 | OUTPUT_ARCH(alpha) | |
14 | ENTRY(__start) | |
65182e6e | 15 | PHDRS { text PT_LOAD; note PT_NOTE; } |
1da177e4 LT |
16 | jiffies = jiffies_64; |
17 | SECTIONS | |
18 | { | |
19 | #ifdef CONFIG_ALPHA_LEGACY_START_ADDRESS | |
b2b5d37d | 20 | . = 0xfffffc0000310000; |
1da177e4 | 21 | #else |
b2b5d37d | 22 | . = 0xfffffc0001010000; |
1da177e4 LT |
23 | #endif |
24 | ||
b2b5d37d SR |
25 | _text = .; /* Text and read-only data */ |
26 | .text : { | |
92ca5234 | 27 | HEAD_TEXT |
b2b5d37d SR |
28 | TEXT_TEXT |
29 | SCHED_TEXT | |
30 | LOCK_TEXT | |
31 | *(.fixup) | |
32 | *(.gnu.warning) | |
65182e6e | 33 | } :text |
ec221208 | 34 | swapper_pg_dir = SWAPPER_PGD; |
b2b5d37d SR |
35 | _etext = .; /* End of text section */ |
36 | ||
c8231825 | 37 | RO_DATA(4096) |
b2b5d37d | 38 | |
b2b5d37d | 39 | /* Will be freed after init */ |
9d93f005 GT |
40 | __init_begin = ALIGN(PAGE_SIZE); |
41 | INIT_TEXT_SECTION(PAGE_SIZE) | |
42 | INIT_DATA_SECTION(16) | |
0415b00d | 43 | PERCPU_SECTION(L1_CACHE_BYTES) |
9d93f005 GT |
44 | /* Align to THREAD_SIZE rather than PAGE_SIZE here so any padding page |
45 | needed for the THREAD_SIZE aligned init_task gets freed after init */ | |
46 | . = ALIGN(THREAD_SIZE); | |
b2b5d37d SR |
47 | __init_end = .; |
48 | /* Freed after init ends here */ | |
49 | ||
a2d063ac | 50 | _sdata = .; /* Start of rw data section */ |
b2b5d37d | 51 | _data = .; |
c9174047 | 52 | RW_DATA(L1_CACHE_BYTES, PAGE_SIZE, THREAD_SIZE) |
b2b5d37d SR |
53 | |
54 | .got : { | |
55 | *(.got) | |
56 | } | |
57 | .sdata : { | |
58 | *(.sdata) | |
59 | } | |
60 | _edata = .; /* End of data section */ | |
61 | ||
9d93f005 | 62 | BSS_SECTION(0, 0, 0) |
b2b5d37d SR |
63 | _end = .; |
64 | ||
b2b5d37d SR |
65 | .mdebug 0 : { |
66 | *(.mdebug) | |
67 | } | |
68 | .note 0 : { | |
69 | *(.note) | |
70 | } | |
71 | ||
72 | STABS_DEBUG | |
73 | DWARF_DEBUG | |
c604abc3 | 74 | ELF_DETAILS |
023bf6f1 TH |
75 | |
76 | DISCARDS | |
1da177e4 | 77 | } |