]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Implement in-kernel relocator for the arm64 module linker.
authorkib <kib@FreeBSD.org>
Thu, 8 Oct 2015 16:58:01 +0000 (16:58 +0000)
committerkib <kib@FreeBSD.org>
Thu, 8 Oct 2015 16:58:01 +0000 (16:58 +0000)
commitc71beb95384d834ab033bf1d65b79465c3b1014c
tree1372edaad2660f458a2ff12dfa782b656d892f51
parent73702930c5c4604f69d0746e0788d9b2849e4377
Implement in-kernel relocator for the arm64 module linker.

It is decided to go with the shared object file format for modules on
arm64, due to the Aarch64 instruction set details.  Combination of the
signed 28-bit offset in the branch instructions encoding together with
the supported memory model of compilers makes the relocatable object
support impossible or at least too hard.

Reviewed by: andrew, emaste
Tested by: andrew (on real hardware)
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D3796
sys/arm64/arm64/elf_machdep.c