AARCH64 text start address: why so low?
Matt Thomas
matt@3am-software.com
Tue Jan 21 03:46:00 GMT 2014
As I was looking at the aarch64 text start address for Linux, I
wondered why it defaulted to 4MB (well within the first 4GB) instead
of (like alpha, mips64 elf, sparc64, hppa64, etc.) defaulting to a
starting address at or above 4GB.
Given there is a minimum of 39 address bits (512GB) of address space,
skipping first 4 GB shouldn't be a problem.
The reason for putting the text start above 4GB is to easily find
address truncation errors (loading a 32-bit pointer will quickly
cause a SEGV).
More information about the Binutils
mailing list