-
Notifications
You must be signed in to change notification settings - Fork 3
/
kernel.ld
70 lines (55 loc) · 1.03 KB
/
kernel.ld
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#include <config.h>
ENTRY(_start)
SECTIONS {
. = BOOT_ENTRY_BASE;
.init : {
*(.init)
}
. = ALIGN(8);
PROVIDE(_pre_init_start = .);
.init.pre_init : {
*(.init.pre_init)
}
PROVIDE(_pre_init_end = .);
PROVIDE(_init_start = .);
.init.init : {
*(.init.init)
}
PROVIDE(_init_end = .);
PROVIDE(_post_init_start = .);
.init.post_init : {
*(.init.post_init)
}
PROVIDE(_post_init_end = .);
PROVIDE(_dev_init_start = .);
.init.dev : {
*(.init.dev)
}
PROVIDE(_dev_init_end = .);
.text : {
*(.text .text.*)
}
. = ALIGN(4K);
.rodata : {
*(.rodata .rodata.*)
}
. = ALIGN(4K);
.data : {
*(.data .data.*)
}
.sdata : {
*(.sdata .sdata.*)
}
. = ALIGN(8);
PROVIDE(_bss_start = .);
.sbss : {
*(.sbss .sbss.*)
}
.bss : {
*(.bss .bss.*)
}
. = ALIGN(8);
PROVIDE(_bss_end = .);
. = ALIGN(4K);
PROVIDE(_heap_start = .);
}