Luna/kernel/moon.ld

38 lines
977 B
Plaintext

ENTRY(_main)
OUTPUT_FORMAT(elf64-x86-64)
mmio = 0xfffffffff8000000; /* these are configurable for level 2 loaders */
fb = 0xfffffffffc000000;
bootboot = 0xffffffffffe00000;
environment = 0xffffffffffe01000;
/* initstack = 1024; */
PHDRS
{
boot PT_LOAD; /* one single loadable segment */
}
SECTIONS
{
. = 0xffffffffffe02000;
kernel_start = .;
.text : {
KEEP(*(.text.boot)) *(.text .text.*) /* code */
. = ALIGN(0x1000);
start_of_kernel_rodata = .;
*(.rodata .rodata.*) /* read-only data */
end_of_kernel_rodata = .;
. = ALIGN(0x1000);
start_of_kernel_data = .; /* data */
*(.data .data.*)
} :boot
.bss (NOLOAD) : { /* bss */
*(.bss .bss.*)
*(COMMON)
} :boot
end_of_kernel_data = .;
kernel_end = .;
/DISCARD/ : { *(.eh_frame) *(.comment) }
}