History log of /haiku/src/system/ldscripts/x86_64/kernel.ld
Revision Date Author Comments
# a2021292 12-Jan-2018 Jérôme Duval <jerome.duval@gmail.com>

kernel: Binary code patches on x86.

This will be used to support SMAP.

Sponsored-by: https://liberapay.com/korli


# 6f6d78e8 25-Jun-2012 Alex Smith <alex@alex-smith.me.uk>

Cleaned up ELF64 address handling.

* platform_allocate_elf_region() is removed, it is implemented in platform-
independent code now (ELF*Class::AllocateRegion). For ELF64 it is now
assumed that 64-bit addresses are mapped in the loader's 32-bit address space
as (address - KERNEL_BASE_64BIT + KERNEL_BASE).
* mapped_delta field from preloaded_*_image removed, now handled compile-time
using the ELF*Class::Map method.
* Also link the kernel with -z max-page-size=0x1000, removes the need for
2MB alignment on the data segment (not going to map the kernel with large
pages for the time being).


# 035825cd 24-Jun-2012 Alex Smith <alex@alex-smith.me.uk>

Align the start of the kernel .data to a 2MB boundary, prevents ld from merging the text and data PHDRs.


# 6296722b 16-Jun-2012 Alex Smith <alex@alex-smith.me.uk>

Fixed incorrect link address in kernel linker script.


# 0d916c34 10-Jun-2012 Alex Smith <alex@alex-smith.me.uk>

x86_64: added linker script for the kernel.

* Based on the x86 one, changes made to match the default GCC x86_64 linker
script and correct kernel load address added.
* Not tested yet as the kernel doesn't fully compile.


# 6f6d78e877c1a485d98de60395854a6d6de61c0d 25-Jun-2012 Alex Smith <alex@alex-smith.me.uk>

Cleaned up ELF64 address handling.

* platform_allocate_elf_region() is removed, it is implemented in platform-
independent code now (ELF*Class::AllocateRegion). For ELF64 it is now
assumed that 64-bit addresses are mapped in the loader's 32-bit address space
as (address - KERNEL_BASE_64BIT + KERNEL_BASE).
* mapped_delta field from preloaded_*_image removed, now handled compile-time
using the ELF*Class::Map method.
* Also link the kernel with -z max-page-size=0x1000, removes the need for
2MB alignment on the data segment (not going to map the kernel with large
pages for the time being).


# 035825cdfcf0f778a4e87c7a216c14ab5e9b8116 24-Jun-2012 Alex Smith <alex@alex-smith.me.uk>

Align the start of the kernel .data to a 2MB boundary, prevents ld from merging the text and data PHDRs.


# 6296722bc0d7b1cbe76111937ad147c850f9bfdc 16-Jun-2012 Alex Smith <alex@alex-smith.me.uk>

Fixed incorrect link address in kernel linker script.


# 0d916c34c4d2c15f233fac8ffefa8ee41f074b18 10-Jun-2012 Alex Smith <alex@alex-smith.me.uk>

x86_64: added linker script for the kernel.

* Based on the x86 one, changes made to match the default GCC x86_64 linker
script and correct kernel load address added.
* Not tested yet as the kernel doesn't fully compile.