summaryrefslogtreecommitdiff
path: root/kernel/kernel.ld
blob: 47dcf3b1f0a24d8d573b43d9589adb025e87a7a9 (plain)
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
ENTRY(kernel_entry)

PROVIDE(k_virt_base = 0xffffffff80000000);

SECTIONS
{
    .text k_virt_base : AT(ADDR(.text) - k_virt_base)
    {
        PROVIDE(k_text_begin = .);
        *(.text)
        . = ALIGN(4K);
        PROVIDE(k_text_end = .);
    } =0xcc

    .data ALIGN(4K) : AT(ADDR(.data) - k_virt_base)
    {
        PROVIDE(k_data_begin = .);
        *(.rodata)
        *(.data)
    }

    .bss :
    {
        *(.bss)
        PROVIDE(k_data_end = .);
    }

    /DISCARD/ :
    {
        *(.eh_frame)
    }
}