diff options
author | Will Deacon <will.deacon@arm.com> | 2013-10-11 14:52:10 +0100 |
---|---|---|
committer | Catalin Marinas <catalin.marinas@arm.com> | 2013-10-25 15:59:33 +0100 |
commit | 5436b5c8305b4ed37c5d11f96c1aaccca63c9ab2 (patch) | |
tree | 9a7c10ab6485e59b219dbfee8ebd7124066ddad1 /arch/arm64 | |
parent | c194520ada7c8f2eddec5ebf24982483b49736a0 (diff) | |
download | linux-5436b5c8305b4ed37c5d11f96c1aaccca63c9ab2.tar.gz linux-5436b5c8305b4ed37c5d11f96c1aaccca63c9ab2.tar.bz2 linux-5436b5c8305b4ed37c5d11f96c1aaccca63c9ab2.zip |
arm64: ELF: add support for big-endian executables
This patch adds support for the aarch64_be ELF format to the AArch64 ELF
loader.
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Diffstat (limited to 'arch/arm64')
-rw-r--r-- | arch/arm64/include/asm/elf.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/arch/arm64/include/asm/elf.h b/arch/arm64/include/asm/elf.h index e7fa87f9201b..a3e4a5564ea3 100644 --- a/arch/arm64/include/asm/elf.h +++ b/arch/arm64/include/asm/elf.h @@ -90,11 +90,24 @@ typedef struct user_fpsimd_state elf_fpregset_t; * These are used to set parameters in the core dumps. */ #define ELF_CLASS ELFCLASS64 +#ifdef __AARCH64EB__ +#define ELF_DATA ELFDATA2MSB +#else #define ELF_DATA ELFDATA2LSB +#endif #define ELF_ARCH EM_AARCH64 +/* + * This yields a string that ld.so will use to load implementation + * specific libraries for optimization. This is more specific in + * intent than poking at uname or /proc/cpuinfo. + */ #define ELF_PLATFORM_SIZE 16 +#ifdef __AARCH64EB__ +#define ELF_PLATFORM ("aarch64_be") +#else #define ELF_PLATFORM ("aarch64") +#endif /* * This is used to ensure we don't load something for the wrong architecture. |