diff options
Diffstat (limited to 'arch/amd64/linker.sc')
| -rw-r--r-- | arch/amd64/linker.sc | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/arch/amd64/linker.sc b/arch/amd64/linker.sc new file mode 100644 index 0000000..16d9330 --- /dev/null +++ b/arch/amd64/linker.sc @@ -0,0 +1,34 @@ +OUTPUT(elf64-x86-64) +ENTRY(amd64_quirks) + +SECTIONS { + . = 0xffffffff80000000; + + .stack (NOLOAD) : { + . = ALIGN(8); + . += 0x10000; + . = ALIGN(8); + kernel_stack_high = .; + } :stack + + kernel_begin = .; + .text : { + KEEP(*(.text .text.*)) + } :text + + . += CONSTANT(MAXPAGESIZE); + + .rodata : { + KEEP(*(.rodata .rodata.*)) + } :rodata + + .data : { + KEEP(*(.data .data.*)) + } :data + + .bss (NOLOAD) : { + KEEP(*(COMMON)) + KEEP(*(.bss .bss.*)) + } :data + kernel_end = .; +}
\ No newline at end of file |
